Regular expression matching on Rust streams.
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.