python - 使用列表匹配包含整个单词的正则表达式
问题描述
我有下面的代码有效
lista= ['abd','bda']
for element in lista:
df[element] = df['concatenated_string'].str.contains(element, regex=True)
df
concatenated_string
0 abdar___
1 abd___
2 asd_ab_ad______
我怎么能匹配整个单词呢?因此,不应选取 concatenated_string 列中“abdar”的值。我试过了:
for element in lista:
df[element] = df['concatenated_string'].str.contains("\b(element)\b", regex=True)
解决方案
尝试f-string
,文字字符串插值:
df = pd.DataFrame({"a":["I was", "I wasn't"]})
els = ["was"]
for element in els:
df["element"] = df["a"].str.contains(f"\\b{element}\\b", regex=True)
df
a element
0 I was True
1 I wasn't False
推荐阅读
- html - cox回归输出表或R中的图
- bash - BASH:将查找输出分配给值包括选项
- java - 在 Intent 中传递整数和对象值不起作用
- kubernetes - 如何将变量值从 teamcity 加载到 configmap
- c++ - 从 OpenModelica 调用 C++ 函数
- javascript - 从嵌套对象javascript返回特定值
- javascript - 我无法在 Nativescript 中导入模块“ns-ui-category/modal-view/basics/modal-view-page”
- javascript - 无法使用 exceljs 读取 protacted excel 文件
- python - IOS 13 推送通知停止到来
- point-cloud-library - 为点云中的特定点着色