6个版本 (破坏性更新)
使用旧Rust 2015
0.5.0 | 2016年8月8日 |
---|---|
0.4.0 | 2016年1月11日 |
0.3.0 | 2015年10月3日 |
0.2.0 | 2015年9月26日 |
0.0.1 | 2015年8月16日 |
#1870 in 算法
170KB
3K SLoC
regex_dfa
一个将正则表达式编译为确定性有限自动机的crate。
为什么?
一些正则表达式实现(例如 rust的regex库)基于非确定性有限自动机(NFA)的模拟。通过将NFA转换为DFA,我们可以获得速度提升,但代价是编译时间和内存使用。 初步基准测试 显示比rust默认的 regex
crate有显著的性能提升。
限制
- 将NFA转换为DFA可能会消耗大量内存,尤其是涉及Unicode字符类时。
- 分组捕获有点棘手,这个crate没有处理它们。
regex_dfa
目前仅适用于nightly rust。
许可证
regex_dfa
采用 MIT 许可证和 Apache 许可证(版本 2.0)。请参阅 LICENSE-APACHE 和 LICENSE-MIT 了解详细信息。
依赖项
约 6–15MB
约 164K SLoC