Skip to main content
 首页 » 编程设计

python -\b 正则表达式包括句点作为单词

2024年10月24日36insus

我正在尝试获取一个正则表达式来返回特定单词的实例,并且仅返回该单词。例如,不应包含作为另一个词的子字符串的词。

到目前为止,这是我在 Python 3.x 中的正则表达式。

re.search(r'\bJohnn(y\'s|y)[.]?\b', string)

但是,由于 . 不被 \w 视为单词字符,因此当我不想要时包含 .Johnny 的实例字符串被匹配

澄清一下,字符串后的句号是可以的。

我是否可以将 . 作为 \w 列表的一部分?

请您参考如下方法:

你可以在断言后面使用负面观察来避免这种情况

re.search(r'\b(?<!\.)Johnn(y\'s|y)[.]?\b', string) 

Regex explanation here

Regular expression visualization