#regex #lua #parser

lua-pattern

Lua 模式解析器和转换为正则表达式

3 个版本

0.1.2 2023年7月6日
0.1.1 2023年5月24日
0.1.0 2023年5月24日

解析器实现 中排名第 2788


2 个 crate 中使用(通过 syntastica-query-preproce…

GPL-3.0-only

44KB
896

lua-pattern

Lua 模式解析器和转换为正则表达式。

此 crate 提供了一个基本的 Lua 模式解析器,并在启用 to-regex 功能的情况下,可以将模式转换为可由 regexfancy-regex crate 使用的标准正则表达式。


lib.rs:

使用方法

  • 可以使用 parse 将 Lua 模式解析为树。
  • 可以使用 try_to_regex 将解析后的模式转换为正则字符串。

例如

use lua_pattern::{Class, PatternObject};

let tree = lua_pattern::parse("%l").unwrap();
assert_eq!(tree, [PatternObject::Class(Class::Lowercase)]);
#[cfg(feature = "to-regex")]
assert_eq!(lua_pattern::try_to_regex(&tree, false, false).unwrap(), "[a-z]");

依赖项

~285–780KB
~18K SLoC