rust-lang/regex

Add a document that describes differences with other regex engines

Opened this issue · 2 comments

On mobile, but here's a start:

  • The impact of "unicode by default." E.g., character classes and word boundaries.
  • Definition of line terminators.
  • Duplicate capture group names.
  • Legality of empty expressions.
  • Alternation match precedence, e.g., leftmost first (Perl) vs leftmost longest (POSIX).
  • Lack of certain features found in backtracking engines.
  • Class set operations.
  • Inconsequential escapes are not allowed.
  • Differences between match semantics of ^/$.
  • Less strictness on nonsensical repetitions. See #765.

Are duplicate capture group names still unsupported? ?(J) would be very useful for trying to merge several different subcases without straight up checking against multiple regexes

Yes, they are still unsupported.