正则表达式地图维护工具

为了支持快速搜索功能(“s”命令/“search_rules.sh”),我们使用一个帮助程序脚本,该脚本会使用人类可读的示例自动注释正则表达式模式。

为什么我们需要这个?

我们的“FUZZY_MAP.py”文件包含复杂的正则表达式。为了使它们可以通过模糊查找器 (fzf) 进行搜索,而无需了解原始正则表达式,我们在模式上方添加“# Examples:”注释。

前: 代码_块_0

之后(自动生成): 代码_块_1

标记器脚本 (map_tagger.py)

我们提供了一个Python脚本,可以扫描所有“FUZZY_MAP.py”和“FUZZY_MAP_pre.py”文件并自动生成这些示例。

### 安装 该脚本需要“exrex”库来为复杂的正则表达式生成随机匹配。

代码_块_2

### 用法 从项目根目录运行脚本:

代码_块_3

工作流程

  1. 创建或编辑映射文件(例如,添加新规则)。

  2. 运行标记器脚本。

  3. 交互模式:

  • 该脚本将向您显示生成的建议。

  • 按“ENTER”接受它。

  • 输入“s”跳过。

  • 如果您想跳过生成失败的所有剩余模式,请输入“sa”(跳过全部)。

  1. 提交更改。

注意: 该脚本会忽略现有的 # Examples: 标签,因此可以安全地重复运行。