Beefy Boxes and Bandwidth Generously Provided by pair Networks
There's more than one way to do things

Re: Printing last two characters

by reasonablekeith (Deacon)
on Jan 03, 2008 at 11:40 UTC ( #660169=note: print w/replies, xml ) Need Help??

in reply to SOLVED Printing last two characters

Firstly, you don't need a regex to pull the last two characters off your data. Use substr instead...
my $string = "1234,Dr,Huxtable,Cliff,M,24/12/1976,60"; my $last_two_chars = substr($string, -2, 2); print $last_two_chars . "\n";
Secondly, as you're passing comma delimited data, just pulling two chars seems over simplified, best to split it by comma (assuming no commas in your data, see Text::CSV for better parsing), give your columns some proper names, and access your data in a readable fashion...
my $temp_col_id = 0; my %COLUMN_IDS_BY_NAME = map {$_, $temp_col_id++} qw(num1 title surnam +e firstname sex dob num2); my @split_data = split /,/, $string; print $split_data[$COLUMN_IDS_BY_NAME{num1}] . "\n"; print $split_data[$COLUMN_IDS_BY_NAME{title}] . "\n"; print $split_data[$COLUMN_IDS_BY_NAME{firstname}] . "\n"; # etc...
my name's not Keith, and I'm not reasonable.

Log In?

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://660169]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others perusing the Monastery: (3)
As of 2022-08-17 01:58 GMT
Find Nodes?
    Voting Booth?

    No recent polls found