in reply to How do I drop leading zeros from a date like 07/04/2001 to read 7/4/2001??
Just off the top of my head:
my $date = '07/04/2001'; $date = join '/', map { $_+0 } split /\//, $date; print $date;
That statement should be read right to left. It splits the $date on the forward slash and passes each segment to the map. map adds zero to each, which forces the string to be numeric, which is what drops that leading zero. The final join restores it to the original format.
You also might find the following a little easier to understand:
$date =~ s!^0+!!; # trim leading zeroes $date =~ s!/0+!/!g; # trim zeroes after a /
Update: Just saw Kanji's better answer on another node (the parent was cross-posted by original author):
$date =~ s/\b0//g;
Cheers,
Ovid
Join the Perlmonks Setiathome Group or just click on the the link and check out our stats.
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: Re: How do I drop leading zeros from a date like 07/04/2001 to read 7/4/2001??
by Kanji (Parson) on Nov 27, 2001 at 09:12 UTC |