3 releases (breaking)

0.2.0 Jul 1, 2024
0.1.0 Feb 25, 2021
0.0.1 Aug 2, 2019

#59 in Text processing

Download history 1156005/week @ 2024-08-14 1208975/week @ 2024-08-21 1144861/week @ 2024-08-28 1292648/week @ 2024-09-04 1212399/week @ 2024-09-11 1198887/week @ 2024-09-18 1288169/week @ 2024-09-25 1320814/week @ 2024-10-02 1303803/week @ 2024-10-09 1432298/week @ 2024-10-16 1424282/week @ 2024-10-23 1358548/week @ 2024-10-30 1370247/week @ 2024-11-06 1451271/week @ 2024-11-13 1414582/week @ 2024-11-20 952037/week @ 2024-11-27

5,449,918 downloads per month
Used in 6,683 crates (2 directly)

MIT license

23KB
317 lines

matchers

Regular expression matching on Rust streams.

Crates.io Documentation MIT licensed CI

Overview

The regex crate implements regular expression matching on strings and byte arrays. However, in order to match the output of implementations of fmt::Debug and fmt::Display, or by any code which writes to an instance of fmt::Write or io::Write, it is necessary to first allocate a buffer, write to that buffer, and then match the buffer against a regex.

In cases where it is not necessary to extract substrings, but only to test whether or not output matches a regex, it is not strictly necessary to allocate and write this output to a buffer. This crate provides a simple interface on top of the lower-level regex-automata library that implements fmt::Write and io::Write for regex patterns. This may be used to test whether streaming output matches a pattern without buffering that output.

Users who need to extract substrings based on a pattern or who already have buffered data should probably use the regex crate instead.

Dependencies

~2–3MB
~53K SLoC