python - 如何从 Python 中的 DataFrame 列中删除特定的更改文本?
问题描述
我有一个包含“测试”列的数据框。它看起来像这样:
Column Test
'[ABC: 814.6] text text text text [text:123]'
'[ABC: 432.9] text text [ABC: 433] text text [text:123]'
'[ABC: 1] text text text [342:] text [text:123]'
我想删除所有'[ABC: XXX.X]'部分。我知道如何替换“静态”文本,如下所示:
df['Test_New'] = df['Test'].str.replace("[ABC: XXX.X]", '')
但是由于 XXX.X 正在发生变化,我不知道如何解决这个问题。
期望的输出:
Column Test
' text text text text [text:123]'
' text text text text [text:123]'
' text text text [342:] text [text:123]'
提前谢谢了!
解决方案
根据@ZaxR 的评论,str.replace
支持正则表达式。
df['Test_New'] = df['Test'].str.replace(r"\[ABC: [\d]{1,3}(?:.\d)?\]", '')
推荐阅读
- javascript - application/dns-message 使用哪种编码?
- python - Python 脚本在 Windows 10 中使用任务调度程序调度另一个 python 脚本,时间间隔增加
- python - 为什么我的踢和禁止命令不起作用?(不和谐.py)
- reactjs - 错误:“未定义不是对象(评估'_reactNative.Stylesheet.create')(设备”
- excel - 检查单元格是否包含列表中的字符串
- ios - 如何在 Swift 中切换到导航控制器的根目录?
- css - 适应儿童身高的砌体布局
- javascript - 编写时在内容可编辑 div 的底部保持填充
- analytics - Agora Analytics (BETA) Rest API 不适用于路由 /analytics/call/lists 路由
- flutter - Facebook内部的firebase动态链接显示错误的网页