Fancy Regex Versions Save

Rust library for regular expressions using "fancy" features like look-around and backreferences

0.13.0

4 months ago

Added

  • Support for relative backreferences using \k<-1> (-1 references the previous group) (#121)
  • Add try_replacen to Regex which returns a Result instead of panicking when matching errors (#130)

Changed

  • Switch from regex crate to regex-automata and regex-syntax (lower level APIs) to simplify internals (#121)
  • Allow escaping some letters in character classes, e.g. [\A] used to error but now matches the same as [A] (for compatibility with Oniguruma)
  • MSRV (minimum supported Rust version) is now 1.66.1 (from 1.61.0)

Fixed

  • Fix index out of bounds panic when parsing unclosed (?( (#125)

0.12.0

4 months ago

Added

  • Support for no_std (the std feature is enabled by default but can be disabled if desired) (#111)
  • TryFrom &str and String impl for Regex (#115)

Changed

  • Error and its components are now Clone (#116)
  • MSRV (minimum supported Rust version) is now 1.61.0 (from 1.42.0)

0.11.0

4 months ago

Added

  • Support for conditionals: using a regex like (?<test>a)?b(?(test)c|d) will try to match c after b if a matched in the capture group named test, otherwise d after b if a wasn't captured into the test group.

Changed

  • Updated parse errors to show the position they occurred at.

Fixed

  • Fix panic when backref is used within referenced group itself and group end index is not known yet (#103)

0.10.0

2 years ago

Added

0.9.0

2 years ago

Added

  • Support for \K (keep out): Using a regex like @\K\w+ will match things like @foo but the resulting match text will only include foo, keeping out the @.