#segmentation #standard #plain-text #regex #compliant #rules #exchange

srx

主要符合文本分割规则交换(SRX)2.0标准的Rust实现

5个版本

0.1.4 2023年7月17日
0.1.3 2021年3月27日
0.1.2 2021年2月10日
0.1.1 2021年2月6日
0.1.0 2021年2月6日

文本处理类目下排名第412

Download history 295/week @ 2024-03-14 291/week @ 2024-03-21 228/week @ 2024-03-28 304/week @ 2024-04-04 327/week @ 2024-04-11 348/week @ 2024-04-18 348/week @ 2024-04-25 286/week @ 2024-05-02 332/week @ 2024-05-09 361/week @ 2024-05-16 409/week @ 2024-05-23 453/week @ 2024-05-30 342/week @ 2024-06-06 477/week @ 2024-06-13 599/week @ 2024-06-20 389/week @ 2024-06-27

每月下载量1,892
5个crate中使用(通过nlprule

MIT/Apache

43KB
455

SRX

Crates.io Docs.rs MIT OR Apache 2.0 license

这是一个简单且速度合理的Rust实现,用于文本分割的文本分割规则交换(SRX)2.0标准srx 并非完全符合该标准。

该crate旨在分割纯文本,因此会忽略标记信息(如 <formathandle>segmentsubflows)。

由于不遵循SRX规范,相同的 <rule> 规则的重复匹配无法找到,这可能导致某些边缘情况的行为不同。

关于正则表达式的说明

该crate使用regex crate进行正则表达式的解析和执行。 regex crate与SRX规范中的正则表达式标准基本兼容。然而,某些元字符(如 \Q\E)不支持。

为了仍然可以使用包含不受支持的规则的文件,并解析如segment.srx(来自LanguageTool)的有用SRX文件,该文件通过例如使用前瞻和后顾的方式不符合标准,srx将忽略无效正则表达式的 <rule> 元素,并通过 srx.errors() 函数提供相关信息。

依赖项

~2–3.5MB
~58K SLoC