【问题标题】:Regex for findings names with title带有标题的结果名称的正则表达式
【发布时间】:2019-04-19 05:02:23
【问题描述】:

我正在创建一个网络蜘蛛来从特定网站检索信息。网站上的名称格式为“SMITH, JOHN ANTHONY”或“SMITH JR, JOHN ANTHONY”。

我使用的正则表达式是[A-Z]+, [A-Z]+ [A-Z]+。如果名称以这种方式格式化,我也想让正则表达式选择“JR”。强制性的句子说明我对 Regex 是多么陌生,这是我在 Stack Overflow 上的第一篇文章。

[A-Z]+, [A-Z]+ [A-Z]+

【问题讨论】:

    标签: regex


    【解决方案1】:

    您可以使用可选组 (?: [A-Z]+)? 来匹配空格和 1+ 次 A-Z:

    [A-Z]+(?: [A-Z]+)?, [A-Z]+ [A-Z]+
    

    Demo on regex101

    您可以使用前置和附加的单词边界 \b 来确保第一个和最后一个匹配项不是更大单词的一部分。

    \b[A-Z]+(?: [A-Z]+)?, [A-Z]+ [A-Z]+\b
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-09-21
      • 2016-06-15
      相关资源
      最近更新 更多