30
可能重复:
Check if multiple strings exist in another stringPython:如何检查列表中的子串的字符串?
我似乎无法找到的功能,如this任何地方的Python代码等效:
基本上,我想检查包含在列表中的子字符串的字符串。
可能重复:
Check if multiple strings exist in another stringPython:如何检查列表中的子串的字符串?
我似乎无法找到的功能,如this任何地方的Python代码等效:
基本上,我想检查包含在列表中的子字符串的字符串。
你可以做个试验:
any(substring in string for substring in substring_list)
如果substring_list
任何字符串都包含在string
它将返回True
。
注意,存在的Marc Gravell's answer在链接的问题一个Python类似物:
from itertools import imap
any(imap(s.__contains__, substring_list))
可能使用一个生成表达上述版本更清晰虽然。
@newtover:[Generator expressions](http://docs.python.org/tutorial/classes.html#generator-expressions)没有方括号。 –
有什么方法可以在返回True时获取子字符串? – vagabond
@vagabond如果没有匹配,你可以使用'next(substring中substring的子字符串,如果字符串中的substring)',它将返回第一个匹配的子字符串,或者抛出'StopIteration'。或者使用一个简单的循环:'substring_list中的子字符串:if substring in string:return substring'。 –