首页 > 解决方案 > Python检查字符串列表中的句子中是否存在字符串

问题描述

我有一个单词列表substring = ["one","multiple words"],我想从中检查一个句子是否包含这些单词中的任何一个。

sentence1 = 'This Sentence has ONE word'
sentence2 = ' This sentence has Multiple Words'

我使用任何运算符检查的代码:

any(sentence1.lower() in s for s in substring)

即使这个词出现在我的句子中,这也给了我错误。我不想使用正则表达式,因为对于大量数据来说这将是一项昂贵的操作。

还有其他方法吗?

标签: pythonsubstringmatchpython-3.7

解决方案


我认为你应该颠倒你的顺序:

any(s in sentence1.lower() for s in substring)

您正在检查您的子字符串是否是句子的一部分,而不是您的句子是否是任何子字符串的一部分。


推荐阅读