Re: regex question matching dates
- From: krahnj@xxxxxxxxx (John W. Krahn)
- Date: Wed, 28 May 2008 21:39:58 -0700
Richard Lee wrote:
given then ARGV[0] is 2008052803, why woulnd't below regex match them??
2008052803 is a ten digit number.
} elsif ( $ARGV[0] =~ m/\b2008[01][1-31]([01][0-9]|2[0-3])\b/ ) {
Your pattern matches eight digits with a \b word boundary at each end so it will never match a ten digit number. Also the character class [1-31] could be more simply written as [1-3] (repeated characters are ignored.)
@array = qx#ls -tr $directory/$ARGV[0]*#;
Why not do that directly in perl:
@array = map $_->[0], sort { $a->[1] <=> $b->[1] } map [ $_, -M ], glob "$directory/$ARGV[0]*";
#2008052803
John
--
Perl isn't a toolbox, but a small machine shop where you
can special-order certain sorts of tools at low cost and
in short order. -- Larry Wall
.
- Follow-Ups:
- Re: regex question matching dates
- From: Richard Lee
- Re: regex question matching dates
- From: John W. Krahn
- Re: regex question matching dates
- References:
- regex question matching dates
- From: Richard Lee
- regex question matching dates
- Prev by Date: regex question matching dates
- Next by Date: Re: regex question matching dates
- Previous by thread: regex question matching dates
- Next by thread: Re: regex question matching dates
- Index(es):
Relevant Pages
|