python从列表中查找匹配项
我是 python 的新手,我正在尝试搜索广告,从 python 的列表中获取所有匹配的项目,但是与列表项目相比,我的输入是否区分大小写,我没有得到。
我正在尝试的代码如下
# dl is available items in the list
dl=['AA_Food', 'FOOD_ORDER', 'AA_FOOD_APP', 'HOTPATH', 'FO_HOT', 'TEST_FOOD']
# search items
r = re.compile(".*FOO.*")
newlist = list(filter(r.match, dl)) # Read Note
nl = json.dumps(newlist)
print(nl)
我得到以下结果:
["FOOD_ORDER", "AA_FOOD_APP", "TEST_FOOD"]
但预期的结果是:
["AA_Food", "FOOD_ORDER", "AA_FOOD_APP", "TEST_FOOD"]
请帮忙。
回答
re.IGNORECASE为此使用
import re
# dl is available items in the list
dl=['AA_Food', 'FOOD_ORDER', 'AA_FOOD_APP', 'HOTPATH', 'FO_HOT', 'TEST_FOOD']
# search items
r = re.compile(".*FOO.*", re.IGNORECASE)
newlist = list(filter(r.match, dl)) # Read Note
print(newlist)