but there's the "*" character.
2009/1/25 Gaal Yahas <[email protected]>: > You can always simplify (?:(?:foo)) to (?:foo). > > On Sun, Jan 25, 2009 at 7:13 PM, Shmuel Fomberg <[email protected]> wrote: >> Thanks for the answer. >> >> What about the: >> (?: >> # Allow both :: and ' in namespace separators >> (?: \' (?!\d) \w+ | \:: \w+ ) >> )* >> >> does the double parenthesis do something, or can it be collapsed to: >> >> # Allow both :: and ' in namespace separators >> (?: \' (?!\d) \w+ | \:: \w+ )* >> >> ? >> >> Shmuel. >> >> >> >> Yitzchak Scott-Thoennes wrote: >>> On Sat, January 24, 2009 4:40 pm, Shmuel Fomberg wrote: >>>> Is it correct that this regex: >>>> >>>> $content =~ /^( >>>> [...@%&*] >>>> (?: : (?!:) | # Allow single-colon non-magic vars >>>> (?: \w+ | \' (?!\d) \w+ | \:: \w+ ) >>>> (?: >>>> # Allow both :: and ' in namespace separators >>>> (?: \' (?!\d) \w+ | \:: \w+ ) >>>> )* >>>> (?: :: )? # Technically a compiler-magic hash, but keep >>>> #it here >>>> ) >>>> )/x; >>>> >>>> is the same is this? >>>> >>>> $content =~ /^( >>>> [...@%&*] >>>> (?: : (?!:) | # Allow single-colon non-magic vars >>>> (?: \w+ | \' (?!\d) \w+ | \:: \w+ ) >>>> ) >>>> # Allow both :: and ' in namespace separators >>>> (?: \' (?!\d) \w+ | \:: \w+ )* >>>> (?: :: )? # Technically a compiler-magic hash, but keep it here >>>> )/x; >>> >>> No, the second one continues on after a single colon to look for a namespace >>> separator, etc, where the first one would have stopped. So when $content >>> is "$:'a", one matches two characters and one matches all four. >>> >>> To show the difference more simply, you are asking if >>> >>> ( A (?: B | C D ) ) >>> >>> is the same as >>> ( A (?: B | C ) D ) >>> >>> Moving D makes it matched after B or C instead of just after C. >>> >>> _______________________________________________ >>> Perl mailing list >>> [email protected] >>> http://perl.org.il/mailman/listinfo/perl >>> >> >> _______________________________________________ >> Perl mailing list >> [email protected] >> http://perl.org.il/mailman/listinfo/perl >> > > > > -- > Gaal Yahas <[email protected]> > http://gaal.livejournal.com/ > _______________________________________________ > Perl mailing list > [email protected] > http://perl.org.il/mailman/listinfo/perl > -- -- vish _______________________________________________ Perl mailing list [email protected] http://perl.org.il/mailman/listinfo/perl
