首页 > 解决方案 > 如果它存在于不区分大小写的字符串中,python 返回特定的子字符串

问题描述

如果字符串中存在子字符串,我目前正在尝试返回一个不区分大小写的子字符串。

举个例子,即使句子是“Apple is cool”或“I like APPLE”或“I like apples”,我也想返回字符串“apple”

我到目前为止是这样的:

words = [x for x in df_word_list['word'].tolist() if x in str(df['sentence'][i])]

这给了我返回的单词,但它区分大小写,有人知道如何将它变成不区分大小写的吗?

df_words_list 是我要识别的单词的数据框。df 是包含句子的数据框。

谢谢!

标签: stringreturnsubstringmatchcontains

解决方案


请下次添加语言作为标签。更容易找到这种方式。

如果您希望它不区分大小写,则将两个单词都降低例如:

words = [x for x in df_word_list['word'].tolist() if x.lower() in str(df['sentence'][i]).lower()]

请注意,如果从一开始就以小写形式存储句子,则速度会更快。因为这样你只需要将一次转换为小写。


推荐阅读