Python 在列表中查找单词/元素并返回匹配的值

Python 在列表中查找单词/元素并返回匹配的值,python,list,Python,List,我正在努力解决以下问题。我有两个列表: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

我正在努力解决以下问题。我有两个列表:
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'
。这将在您的搜索词后拖出任何非空格字符。

非常感谢您的快速搜索。没有iam收到正确的结果。最后一个问题。我如何访问匹配的值?无[]过程已完成,退出代码0结果存储在元组中您可以通过
b[1]访问它
。如果我想将所有匹配的值存储在一个列表中,我该怎么办?这可能比问题看起来要困难一些。请尝试将问题改为“我想要”而不是“我想要”通过评论查看,RE可能不是获得所需内容的最佳方式。结果应该是:大众汽车公司、奥迪汽车公司、兰博基尼汽车公司。唯一的问题是如何从RE中提取匹配值。MatchObject:None流程已完成,退出代码为0