首页 > 解决方案 > 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')

标签: pythonfind

解决方案


这是一次性的事情还是内部循环?只需将所有内容都设为大写(或等效的小写)。

keyword_upper = keyword.upper()
[index for index, element in enumerate(doc_list) if keyword_upper in element.upper()]

如果你真的需要速度,那么用关键字创建一个正则表达式模式,然后对 doc_list 的每个元素进行不区分大小写的搜索。


推荐阅读