What if you need the unmodified behavior?
But what unmodified behavior would you need that you would not be able to access in a fairly clear and simple manner? E.g., if you're using /s and you want the "match anything except a newline" behavior, does not [^\n] best express this? (One of the driving motivations of TheDamian's regex PBPs is clarity of expression.)
Conversely, in the absence of /s, how would you best express "match anything at all, including a newline" (the most common use-case, IMO)? Something like [\s\S] would do the trick, but is that anyone's idea of clarity? (And don't get me started on (?s:.) ...)
... with /x ... you can always just escape any literal space characters your regex needs. But ... all those escapes clutter the code ...
I must admit that the need for special handling of spaces can be annoying. But even this can advance clarity: [ ] (I would not use \) matches a blank space exactly; [ \t] matches a blank space or a tab exactly; \s matches any whitespace exactly; etc... (You may object that \s is too general, but there've been several occasions on which I've been saved from a 3 AM phone call by having used \s rather than a more specific [ ] — or even \) And \Q...\E can help out, too.
Anyway, TheDamian explains it all more completely and clearly than I can, so maybe pursue that avenue.
Give a man a fish: <%-{-{-{-<
In reply to Re^7: /g option not making s// find all matches (updated)
by AnomalousMonk
in thread /g option not making s// find all matches
by raygun
For: | Use: | ||
& | & | ||
< | < | ||
> | > | ||
[ | [ | ||
] | ] |