You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

圣经章节正则匹配问题:无法识别逗号后的单独章节

圣经章节正则匹配修复方案

修改后的正则表达式

(\d{1,2} ?)?([A-Za-z]+(?: [A-Za-z]+)*) (\d{1,3})(?::(\d{1,3})(?:-(\d{1,3}))?)?(?:, *(\d+(?::\d+(?:-\d+)?)?|(?:\d{1,2} ?)?[A-Za-z]+(?: [A-Za-z]+)* \d+(?::\d+(?:-\d+)?)?))*

修改说明

  1. 原问题出在末尾的, (\S+)部分:\S+强制要求逗号后紧跟非空白字符,导致Hos 10:1-3, 8中逗号后的空格+章节号8无法被匹配。
  2. 调整后的末尾片段, *(\d+(?::\d+(?:-\d+)?)?|(?:\d{1,2} ?)?[A-Za-z]+(?: [A-Za-z]+)* \d+(?::\d+(?:-\d+)?)?):
    • , *允许逗号后有0个或多个空格,兼容带空格/不带空格的分隔格式;
    • 分两种匹配场景:
      • 第一种\d+(?::\d+(?:-\d+)?)?:匹配同一章下的单独章节号(如8)或节范围(如8-10);
      • 第二种(?:\d{1,2} ?)?[A-Za-z]+(?: [A-Za-z]+)* \d+(?::\d+(?:-\d+)?)?:保留对跨书条目(如1 Peter 2:3)的匹配能力,支持数字开头的书名格式。
  3. 末尾加*允许匹配多个逗号分隔的条目(如Hos 10:1-3, 8, 10-12)。

验证场景

  • 可匹配:Hos 10:1-3, 8、1 Peter 1:1-5、Gen 1:1, Exod 2:3、Matt 5:9, 11-13, 15

内容的提问来源于stack exchange,提问作者Jeremy Menicucci

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.22 12:37:23