makadev / re2dfa
正则表达式到DFA转换的库。
0.1.0
2020-11-15 16:56 UTC
Requires
- php: >=7.4.0
- makadev/bitset: ^1.0
Requires (Dev)
- phpstan/phpstan: ^0.12.51
- phpunit/phpcov: ^8.2
- phpunit/phpunit: ^9.4
- psalm/plugin-phpunit: ^0.13.0
- vimeo/psalm: ^4.0
This package is auto-updated.
Last update: 2024-09-05 23:04:57 UTC
README
php-re2dfa
PHP库,用于正则表达式到DFA转换。
这是什么
一个库,用于将正则表达式(RegEx)转换为带有命名终止状态的非确定性有限自动机(ɛ-NFA)和确定性有限自动机(DFA),以便分析和进一步使用构建的DFA / ɛ-NFA,例如用于可视化或构建词法分析器。
这不是什么
- PCRE兼容
- 快速正则表达式匹配的替代方案
功能
- 正则表达式到ɛ-NFA转换
- 直接ɛ-NFA构建
- 将多个具有单独有限状态的ɛ-NFA转换为DFA
- ɛ-NFA模拟
- DFA模拟
计划中的功能
- DFA最小化(例如,Moore的划分算法)
- DFA和ɛ-NFA输出(例如,dot,json,text)
内部待办事项
- 添加功能的用法示例
- 此处和那里的优化
- 用AST替换栈式正则表达式解析器
- 字符类,如空白(如
:whitespace:
) - 重复表达式(如
RE{min,max}
,RE{exact}
)
- 字符类,如空白(如