Python 尽管存在原始字符串,但单词边界不起作用

Python 尽管存在原始字符串,但单词边界不起作用,python,regex,Python,Regex,我有一个字符串列表,我正在尝试对其运行正则表达式搜索 我使用: re.search(r"\b" + word + r"\b", list[item], re.I) 然而,搜索结果没有考虑单词边界,仍然返回错误的结果。 例如: 当word为try并且我运行测试时,它仍然返回True,用于尝试或country 我做错了什么?如评论中所述,您的模式看起来不错 不过,这是一个小笑话——如果您有一个字符串列表,您可以简单地执行以下操作: for string in string_list: re

我有一个字符串列表,我正在尝试对其运行正则表达式搜索

我使用:

re.search(r"\b" + word + r"\b", list[item], re.I)
然而,搜索结果没有考虑单词边界,仍然返回错误的结果。 例如:

当word为
try
并且我运行测试时,它仍然返回True,用于
尝试
country


我做错了什么?

如评论中所述,您的模式看起来不错

不过,这是一个小笑话——如果您有一个字符串列表,您可以简单地执行以下操作:

for string in string_list:
    result = re.search(r"\b" + word + r"\b", string, re.I)

它避免使用内置的Python函数
list

,很抱歉,不清楚。我遍历列表中的每个字符串。搜索(r“\b”+“try”+r“\b”,“Country”,re.I)是
None
re.search(r“\b”+“try”+r”\b”,“免费试用”,re.I)
是匹配项。我觉得不错。不知道,对我有用。你能举一个不起作用的例子吗?