具有如下数据框:
df= pd.DataFrame({'category':['Fishing','Refrigeration','store'],'synonyms_text':['seafood','foodlocker',' food']})
以及以下列表:
list_desc=['FOOD', 'GROWERS', 'INTERNATIONAL']
如何遍历list_desc
以创建要在数据框中使用的动态正则表达式?
for word in list_desc:
print(word.lower())
df_tmp= df.loc[df['synonyms_text'].str.contains(r'\bfood\b')]
food
必须用word
变量代替。
谢谢
答案 0 :(得分:0)
您可以像使用format()
一样使用r'\b{0}\b'.format(word)
动态构建正则表达式
示例:
for word in list_desc:
df_tmp= df.loc[df['synonyms_text'].str.contains(r'\b{0}\b'.format(re.escape(word.lower())))]