See JE::Types for a description of most of the interface. Only what
is specific to JE::Object::RegExp is explained here.
A RegExp object will stringify the same way as a qr//, so that you can
use =~ on it. This is different from the return value of the
to_string method (the way it stringifies in JS).
Since JEs regular expressions use Perls engine underneath, the
features that Perl provides that are not part of the ECMAScript spec are
supported, except for (?s)
and (?m), which dont do anything, and (?|...), which is
In versions prior to 0.042, a hyphen adjacent to \d, \s or \w in a
character class would be unpredictable (sometimes a syntax error). Now it
is interpreted literally. This matches what most implementations do, which
happens to be the same as Perls behaviour. (It is a syntax error