in reply to problem using regexp
The problem here is overlapping matches. The space between the first and the second occurence of /a/i is part of both possible matches. Since it is gobbled by the first match, the second /a/i doesn't match.
It is possible to "rewind" your regex by assigning to pos. See 'pos' in perldoc.
#! usr/bin/perl use strict; use warnings; $_=' A a A '; while (/(\s)(a)(\s)/ig) { print "The text matches the pattern '$&' at position " . pos() . " +.\n"; # uncomment this to rewind #pos() = pos() - 1; }
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^2: problem using regexp
by artifact (Novice) on Jul 29, 2012 at 16:05 UTC |