# New Ticket Created by  "Mark E. Shoulson" 
# Please include the string:  [perl #103412]
# in the subject line of all future correspondence about this issue. 
# <URL: https://rt.perl.org:443/rt3/Ticket/Display.html?id=103412 >


$ perl6 --version
This is perl6 version 2011.10-98-g1985138 built on parrot 3.9.0 revision 
RELEASE_3_9_0-51-g65e6ab7
$ perl6
>  "e u a u e u a" ~~ /:sigspace ("a") ([<[aeiou]> ]+)$/
=> < a u e u a>
 0 => <a>
 1 => <u e u a>

> "e u a u e u a" ~~ /:sigspace .("a") ([<[aeiou]> ]+)$/
#<failed match>
> # Only a single . was added before the ("a"), which is plainly not at the 
> beginning of the line.
> "e u a u e u a" ~~ /:sigspace .?("a") ([<[aeiou]> ]+)$/
=> < a u e u a>
 0 => <a>
 1 => <u e u a>

> # OK, making the . optional works, but what if I try to capture it?
> "e u a u e u a" ~~ /:sigspace (.?)("a") ([<[aeiou]> ]+)$/
#<failed match>
> # Surely choosing to capture a part of the match shouldn't affect whether it 
> matches at all!

This all works differently if we use a space between the . and the ("a").  It 
looks like
at least some my own difficulty in the particular case relates to the space 
after
the :sigspace adverb counting as whitespace, but does that explain everything?

~mark

Reply via email to