如何使用带有编解码器值的 python .replace 来删除特殊字符?
Posted
技术标签:
【中文标题】如何使用带有编解码器值的 python .replace 来删除特殊字符?【英文标题】:How to use python .replace with a codec value to remove special characters? 【发布时间】:2021-10-31 07:03:22 【问题描述】:我有一个从 excel 导入的数据框,该数据框在一列中的一个字符串值中有一个“-”,但它不是常规的破折号,最后我通过查看该单元格和 .encode( 'utf-8',错误 = '替换')。 我可以看到破折号真的是:\xe2\x80\x93 我现在想做的就是把它改成一个空格。而且我似乎什么也做不了。我没有收到错误,但它没有更新。我试过了:
df['column'].replace(b'\xe2\x80\x93', ' ')
df['column'].replace('\xe2\x80\x93', ' ')
df['column'].replace(b'\xe2\x80\x93', ' ', regex=True)
df['column'].replace('\xe2\x80\x93', ' ', regex=True)
dictionary = '\xe2\x80\x93': ' '
df['column'].replace(dictionary, regex=True)
我不确定我做错了什么以及如何替换这个字符。
【问题讨论】:
df['column'].replace(b'\xe2\x80\x93'.decode('utf-8'), ' ')
?顺便说一句,它是–
U+2013, 0xE2,0x80,0x93 En Dash
谢谢!不幸的是,这也没有改变它......
请将您的问题edit 提供给minimal reproducible example。至少:你的df
的一个例子(–
En Dash 存在),以及一个代码 sn-p 你如何得到df
...
【参考方案1】:
先尝试解码:
df['column'].replace(b'\xe2\x80\x93'.decode('utf8'), ' ')
【讨论】:
谢谢!不幸的是,这也没有改变它......以上是关于如何使用带有编解码器值的 python .replace 来删除特殊字符?的主要内容,如果未能解决你的问题,请参考以下文章
Android 手机可以解码和播放带有 iLBC 编解码器的 *.caf 文件吗?
有没有办法使用带有编解码器 AAC 到 AAC 的 ffmpeg 获得准确的 1 秒剪辑
将带有 amr_nb 音频编解码器的 .mov 包装器转换为 aac/mp4a 编解码器
无法在python中使用MIME发送带有pdf附件的电子邮件
使用 pyarrow 的 Python 错误 - ArrowNotImplementedError:未构建对编解码器“snappy”的支持