http://qs321.pair.com?node_id=534343


in reply to Re: simple regex
in thread simple regex

Who says 'Fun with regexes' is not a contact sport?
$text .= 'blah<input type="hidden" name="FOO" value="123-01">blah'; $text .= "\nblah\n"; $text .= 'blah<input type="hidden" name="VERIFIER" value="076-62">blah +'; $text .= "\nblah\n"; $page = (($text =~ m/name="VERIFIER"\ value="([-0-9]+?)">/xg),$1)[0]; print "$page";
So, $page will end up as "076-62" in your example... and to hell with $1.




If you wanted make it more interesting, you could replace the appropriate line with:
$page = (($text =~ m/<input\ type="hidden"\ name="VERIFIER"\ value="(\ +d+)\-(\d+)">/xg),$1.'-'.$2)[0];
or
$page = (($text =~ m/<input\ type="hidden"\ name="VERIFIER"\ value="(\ +d+)\-(\d+)">/xg),$1.'-'.$2)[1];
if you only wanted a portion of the value. (The '072' or '062' in your example.)




FYI, the 'special character' that's goofing with you (at least as written in your example) is the space between "VERIFIER" and value. The " characters do not have to be backwhack-escaped, but that non-escaped space in the middle of your regex will cause the match to fail.

Well, that's my $.02 worth. No, for refunds you'll have to check our customer service department.