gpt4 book ai didi

python - 用于提取以 Mr.|Mrs 开头的姓名的正则表达式

转载 作者:行者123 更新时间:2023-11-30 23:17:52 25 4
gpt4 key购买 nike

我试图编写正则表达式来识别以开头的名称

Mr.|Mrs.

例如

Mr. A, Mrs. B.

我尝试了几种表达方式。这些正则表达式已在在线工具 pythonregex.com 上进行检查。 。使用的测试字符串是:

"hey where is Mr A how are u Mrs. B tt`"

提到的输出是Python的findall()函数,即

regex.findall(string)

它们各自的regex输出如下。

Mr.|Mrs. [a-zA-Z]+  o/p-[u'Mr ', u'Mrs']

为什么A和B没有和先生和夫人一起出现?

[Mr.|Mrs.]+ [a-zA-Z]+ o/p-[u's Mr', u'. B']

为什么s和Mr.一起而不是A?

我尝试了更多组合,但这些组合很令人困惑,所以这里是它们。对于名称部分,我知道正则表达式必须涵盖更多条件,但从基本开始。

最佳答案

像下面这样改变你的正则表达式,

(?:Mr\.|Mrs\.) [a-zA-Z]+

DEMO

  1. 您需要将 Mr\.Mrs\. 放入非捕获组或捕获组中,以便 | (或) 适用于群组本身。
  2. 您必须需要转义正则表达式中的点以匹配文字点,否则它将匹配任何字符。 . 是正则表达式中的特殊元字符,可匹配除换行符之外的任何字符。

甚至更短,

Mrs?\. [a-zA-Z]+
上面的

? 量词使前一个字符 s 成为可选字符。

关于python - 用于提取以 Mr.|Mrs 开头的姓名的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27120511/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com