Python:如何匹配字符串列表中的特定单词,无论它由大写字母还是小写字母组成

我想定义一个函数:

  • 将由字符串和关键字组成的列表作为输入

  • 返回一个新列表,其中包含包含关键字的字符串的索引号,无论关键字的一个或多个字符是小写还是大写。

我已经尝试过这个:

def find_the_word(doc_list, keyword):
   index_list = [doc_list.index(element) for element in doc_list if keyword in element]
      return index_list

对于a和的输入'name',我想将其作为结果[0,1,2]

a = ["My name is Maria.", "What is your name?", "Name three european countries."]
find_the_word(a,'name')


森林海
浏览 118回答 1
1回答

萧十郎

这是一次性的事情还是内部循环?只需将所有内容设为大写(或同等的小写)即可。keyword_upper = keyword.upper()[index for index, element in enumerate(doc_list) if keyword_upper in element.upper()]如果您确实需要速度,请根据关键字创建正则表达式模式,然后对 doc_list 的每个元素进行不区分大小写的搜索。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python