我有以下列表:
list1 = ['john mayer', 'elizabeth taylor', 'steven barber','jennifer richards']
list2 = ['john','jennifer']
我想比较list1和list2并返回TRUE,因为名字匹配。我知道,如果全名在list2中可用,我可以通过使用集合交集来完成这项工作,但事实并非如此。是否存在设置交集的正则表达式匹配版本
编辑:是的,以上示例的结果应为true
如果我有清单3
list3 = ['jack','jennifer']
list1-list2 : TRUE
list2-list3 : FALSE
EDIT2:我认为我的原始帖子不太清楚。在list2或list3中,我可以混合使用名字和全名
list4 = ['john mayer', 'jennifer']
list1-list4 : TRUE
最佳答案
def first_name_is_in(first_names, full_names):
for name in first_names:
for full_name in full_names:
if full_name.startswith("%s " % (name,)):
return True
return False
关于python - python列表交集-正则表达式匹配,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10099413/