我有一个字符串,其中“LOCAL”一词多次出现。我使用find()
函数来搜索这个单词,但它返回另一个单词“本地”以及。我怎样才能完全匹配“本地”一词?字符串完全匹配
Q
字符串完全匹配
11
A
回答
30
对于这种事情,正则表达式是非常有用的:
import re
print(re.findall('\\blocal\\b', "Hello, locally local test local."))
// ['local', 'local']
\ B表示单词边界,也基本上是这样。可以是空间,标点符号等
编辑发表评论:
print(re.sub('\\blocal\\b', '*****', "Hello, LOCAL locally local test local.", flags=re.IGNORECASE))
// Hello, ***** locally ***** test *****.
您可以删除标志= re.IGNORECASE如果你不想忽略的情况下,很明显。
0
寻找'本地'?注意Python是区分大小写的。
0
做\ blocal \正则表达式搜索家庭
\ b是“字boundry”它可以包括线路的起点,线,标点符号等
您也可以搜索案结束不区分大小写。
1
你可以使用正则表达式来约束比赛发生在单词边界,就像这样:
import re
p = re.compile(r'\blocal\b')
p.search("locally") # no match
p.search("local") # match
p.findall("rty local local k") # returns ['local', 'local']
9
下面你可以使用简单的功能。
def find_word(text, search):
result = re.findall('\\b'+search+'\\b', text, flags=re.IGNORECASE)
if len(result)>0:
return True
else:
return False
使用:
text = "Hello, LOCAL locally local test local."
search = "local"
if find_word(text, search):
print "i Got it..."
else:
print ":("
1
line1 = "This guy is local"
line2 = "He lives locally"
if "local" in line1.split():
print "Local in line1"
if "local" in line2.split():
print "Local in line2"
只有一号线将匹配。
相关问题
- 1. NSPredicate与字符串完全匹配
- 2. Jmock完全匹配字符串参数
- 3. 为什么^ \ d + $匹配完全数字的字符串?
- 4. 字符串比较C# - 全字匹配
- 5. PHP字符串替换全字匹配
- 6. grep完全匹配冒号分隔字符串
- 7. 如何搜索字符串中的单词(完全匹配)?
- 8. 查找文件python中字符串的完全匹配数
- 9. 子字符串或完全匹配的正则表达式
- 10. 正则表达式与字符串完全匹配
- 11. 搜索完全匹配正在返回子字符串。
- 12. grepl使用R中的对象完全匹配字符串
- 13. Elasticsearch:需要完全匹配字符串的偏移量
- 14. 比较不完全匹配的字符串
- 15. Python字符串匹配完全等于Postgresql相似函数
- 16. 大熊猫str.contains部分字符串的完全匹配
- 17. PERL +完全匹配字符串(从左侧)在行
- 18. 选择部分字符串匹配(全字匹配)
- 19. 如何在Perl中匹配Unicode字符串中完全组成的字符?
- 20. 字符串匹配
- 21. 匹配字符串
- 22. 匹配字符串
- 23. 匹配字符串
- 24. 字符串匹配
- 25. 字符串匹配
- 26. 匹配字符串
- 27. mysql:完全匹配?
- 28. 字符串数组匹配字符串
- 29. 匹配文字字符串'\ $'
- 30. 更换完成字符串,如果前两个字符匹配
感谢它的工作..但还有一个问题,当我试图用另一个词替换“本地”时,它也替换“本地”,如“***** ly”。 – 2010-11-13 18:03:42
这是一样的事情,但你使用re.sub而不是re.findall。我编辑了我的帖子。 – 2010-11-13 18:06:55
谢谢....它的工作..我试了三天以来..你真的是蟒蛇大师。 – 2010-11-13 18:14:46