1
0
mirror of https://github.com/BurntSushi/ripgrep.git synced 2024-12-12 19:18:24 +02:00
ripgrep/grep-regex
Andrew Gallant adb9332f52
regex: fix -F aho-corasick optimization
It turns out that when the -F flag was used, if any of the patterns
contained a regex meta character (such as `.`), then we winded up
escaping the pattern first before handing it off to Aho-Corasick, which
treats all patterns literally.

We continue to apply band-aides here and just avoid Aho-Corasick if
there is an escape in any of the literal patterns. This is unfortunate,
but making this work better requires more refactoring, and the right
solution is to get this optimization pushed down into the regex engine.

Fixes #1334
2019-08-01 16:58:12 -04:00
..
src regex: fix -F aho-corasick optimization 2019-08-01 16:58:12 -04:00
Cargo.toml grep-regex: release 0.1.3 2019-04-15 17:56:04 -04:00
LICENSE-MIT libripgrep: initial commit introducing libripgrep 2018-08-20 07:10:19 -04:00
README.md libripgrep: initial commit introducing libripgrep 2018-08-20 07:10:19 -04:00
UNLICENSE libripgrep: initial commit introducing libripgrep 2018-08-20 07:10:19 -04:00

grep-regex

The grep-regex crate provides an implementation of the Matcher trait from the grep-matcher crate. This implementation permits Rust's regex engine to be used in the grep crate for fast line oriented searching.

Linux build status Windows build status

Dual-licensed under MIT or the UNLICENSE.

Documentation

https://docs.rs/grep-regex

NOTE: You probably don't want to use this crate directly. Instead, you should prefer the facade defined in the grep crate.

Usage

Add this to your Cargo.toml:

[dependencies]
grep-regex = "0.1"

and this to your crate root:

extern crate grep_regex;