【发布时间】:2018-07-03 20:54:25
【问题描述】:
我有一个简单的字符串测试如下:
test = 'Liquid marinade for cooking fish liquid vegetables'
我想使用正则表达式匹配字符串中的关键字“liquid marinade”。 (我匹配其他关键字,需要使用单词边界,所以一个简单的string.index() 是不够的)
我编译了以下正则表达式:
regex = re.compile(r'\b(liquid marinade)\b')
然后进行不区分大小写的搜索:
regex.search(test, re.IGNORECASE)
什么也得不到。
如果我尝试使用^(liquid marinade)\b,也是如此。
使用\b(marinade for)\b 匹配第二个和第三个单词,所以我猜问题出在字符串以单词Liquid 开头但不应该被\b 覆盖作为单词边界?
【问题讨论】:
-
regexObj.search的第二个参数是您开始搜索的位置。