Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl-Sensitive Sunglasses
 
PerlMonks  

Re: Weird Regexes Stuff

by Samy_rio (Vicar)
on Aug 18, 2011 at 18:00 UTC ( #921034=note: print w/ replies, xml ) Need Help??


in reply to Weird Regexes Stuff

Updated

this may help you

#!/usr/bin/perl -w use strict; use warnings; my $input = 'All the following should be acceptable: 12:00am, 5:00pm, +8:30AM. These should probably not be accepted: 3:00,2:60am, 99:00am, +3:0pm, 29:00AM.'; while ($input =~ m/\W([1-9]|[01][0-2]|2[0-3]):[0-5][0-9][ap]m/gsi) { print "This is a valid time!\t$&\n"; } __END__ OUTPUT This is a valid time! 12:00am This is a valid time! 5:00pm This is a valid time! 8:30AM

Regards,
Velusamy R.


eval"print uc\"\\c$_\""for split'','j)@,/6%@0%2,`e@3!-9v2)/@|6%,53!-9@2~j';


Comment on Re: Weird Regexes Stuff
Select or Download Code
Re^2: Weird Regexes Stuff
by AnomalousMonk (Abbot) on Aug 18, 2011 at 18:11 UTC
    >perl -wMstrict -le "my $input = '12:00AM 29:00AM'; while ($input =~ m/\W(0|[0-2]?[0-9]):[0-5][0-9][ap]m/gsi) { print qq{This is a valid time!\t'$&'}; } " This is a valid time! ' 29:00AM'
Re^2: Weird Regexes Stuff
by AnomalousMonk (Abbot) on Aug 19, 2011 at 07:47 UTC

    The updated solution still has a problem, IMO, with that pesky  \W anchoring the start of the match. Is the following really what you intend?

    >perl -wMstrict -le "my $input = '12:00am, 5:00pm,8:30AM'; while ($input =~ m/\W([1-9]|[01][0-2]|2[0-3]):[0-5][0-9][ap]m/gsi) { print qq{This is a valid time!\t$&}; } " This is a valid time! 5:00pm This is a valid time! ,8:30AM

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others having an uproarious good time at the Monastery: (15)
As of 2015-07-01 17:42 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The top three priorities of my open tasks are (in descending order of likelihood to be worked on) ...









    Results (14 votes), past polls