http://qs1969.pair.com?node_id=788429


in reply to Re: Nifty qr OR bullets with butterfly wings
in thread un-Nifty qr OR ASCII bullet parser

Alternative (shorter and returns a compiled regexp unlike the OP's and the above solutions):
Huh? My code returns (?-xism:[@*+]), but the inclusion of \Q is a good idea.

--
In Bob We Trust, All Others Bring Data.

Replies are listed 'Best First'.
Re^3: Nifty qr OR bullets with butterfly wings
by ikegami (Patriarch) on Aug 14, 2009 at 02:59 UTC

    It returns the string (?-xism:[@*+])

    1. qr/[%s]/ builds a regex that matches strings containing "%" or "s".
    2. sprintf stringifies the compiled regex to (?-xism:[%s]) to use it as the format pattern.
    3. The characters are included into the format pattern and the result is returned by sprintf.

    So not only do you not end up with a compiled pattern, you waste time compiling a pattern you never use!

      Doh! damn, that sucks.... back to $bullet = qr/[\Q@{[join '', keys %bullets]}\E]/; I guess.

      --
      In Bob We Trust, All Others Bring Data.