我想使用find()找到完全匹配的单词。但是它的接缝find()也返回部分匹配的字符串。
参考stackoverflow String exact match中的先前帖子,使用了以下正则表达式:
import re
print(re.findall('\\blocal\\b', "Hello, locally local test local."))
// ['local', 'local']
问题在于我的情况是“本地的”。与“本地”不同
我该怎么做?
更新
我需要做的是替换包含本地工作的元素。
print("Hello, locally local test local#".replace('local','we'))
// should result in
Hello, locally we test local#
答案 0 :(得分:5)
findall
如果您要返回的是您要查找的内容列表,则没有任何意义...对于此用例,我不会费心去做,并且只需使用:
'Hello, locally local test local.'.split().count('local')
好的,有关的更新:
我需要做的是替换包含本地工作的元素。
我会选择类似的东西:
re.sub(r'\blocal([\b\s])', r'we\1', s)