You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Pandas用replace无法移除货币列前缀$与后缀F,正则哪里出错?

正则表达式错误点
  • 符号转义错误:$在正则中是匹配字符串结尾的特殊元字符,要匹配字面量$需要用反斜杠转义为\$,你写的$$、/都属于无效转义写法,还额外加了不需要匹配的/字符,自然匹配不到目标内容
  • 匹配逻辑错误:你写的正则^/$$[F]逻辑是「匹配开头的/+结尾+结尾+单个F」,和你要匹配「开头的$、结尾的F」的需求完全不符
  • 缺少逻辑或规则:你要同时匹配前缀和后缀两种不同位置的字符,需要用|表示或逻辑,分别匹配开头的$和结尾的F
  • 额外注意:pandas的replace默认返回新的Series对象,如果你没有赋值回原列,原数据也不会发生修改
正确实现代码
# 正则r"^\$|F$" 表示匹配开头的$ 或者 结尾的F,替换为空后转成浮点型方便后续计算
df["Price"] = df["Price"].replace(r"^\$|F$", "", regex=True).astype("float")

内容的提问来源于stack exchange,提问作者sayth

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 23:21:01