我正在努力解决以下问题。我有两个列表:wordList
和myLIST
目标是检查wordList
中的任何元素是否也在myList
中。然后应该返回匹配的值
脚本如下所示:
import re
myList = ['volkswagen-ag','audi-ag','lamborghini-ag']
wordList = ['volkswagen','audi','lamborghini']
def findWholeWord(w):
return re.compile(r'\b({0})\b'.format(w), flags=re.IGNORECASE).search
for x in myList:
b = findWholeWord(y)(x)
print(b)
它产生以下结果:
<re.Match object; span=(0, 10), match='volkswagen'>
None
None
None
<re.Match object; span=(0, 4), match='audi'>
None
None
None
<re.Match object; span=(0, 11), match='lamborghini'>
如何获取myLIST
中匹配字段的值(例如:"Volkswagen"
应该返回"volkswagen-ag"
)?我刚刚从另一篇博客文章中找到了一个解决方案
我想用匹配的值创建一个新列表
您将包括单词边界,但不包括搜索单词后的字符。您应该将正则表达式更新为
r'\b({0}[^\s]+)\b'
。这将在搜索词后提取任何非空格字符相关问题 更多 >
编程相关推荐