Anaconda Python中str.replace替换'+'报错的原因解析
报错原因解析
- 你使用的
pandas.Series.str.replace方法在regex=True模式下,会将第一个参数当作正则表达式解析。 +是正则表达式中的特殊元字符,作用是匹配前面的字符或子表达式至少一次。但你单独传入'+'时,正则引擎找不到它前面可重复的元素,因此触发error: nothing to repeat at position 0错误。- 第一行代码里的
','不属于正则特殊字符,所以能正常执行替换操作。
可选解决办法
如果要替换字面意义的+,两种方式任选其一:
- 对
+进行转义,写成正则兼容格式:
app_data['Installs']=app_data['Installs'].str.replace('\+','',regex=True)
- 关闭正则模式,让方法按普通字符串匹配:
app_data['Installs']=app_data['Installs'].str.replace('+','',regex=False)
内容的提问来源于stack exchange,提问作者ayisha
相关产品推荐
相关产品推荐

