gpt4 book ai didi

Python删除额外的特殊unicode字符

转载 作者:行者123 更新时间:2023-11-28 21:07:59 43 4
gpt4 key购买 nike

我正在用 python 处理一些文本,它在内部已经是 unicode 格式,但我想摆脱一些特殊字符并用更标准的版本替换它们。

我目前有一条看起来像这样的线,但它变得越来越复杂,我认为它最终会带来更多麻烦。

tmp = infile.lower().replace(u"\u2018", "'").replace(u"\u2019", "'").replace(u"\u2013", "").replace(u"\u2026", "")

例如 u\2018 和\u2019 是 leftright单引号。这些在某种程度上是可以接受的,但对于这种类型的文本处理,我认为不需要它们。

this 这样的东西u\2013 EN DASH 和 this绝对不需要水平省略号。

有没有一种方法可以删除那些引号并使用简单的标准引号,这些引号不会破坏“使用 nltk”进行的文本处理,并删除诸如 EN DASH、HORIZONTAL ELLIPSIS 之类的内容,而无需像我看到的那样发出这样的怪物电话 starting to rear是上面示例代码中的head吗?

最佳答案

如果您的文本是英文的,并且您想以人类可读的方式对其进行清理,请使用第三方模块 unidecode .它用最接近的 ascii 相似字符替换了范围广泛的字符。只需将 unidecode.unidecode() 应用于任何字符串即可进行替换:

from unidecode import unidecode
clean = unidecode(u'Some text: \u2018\u2019\u2013\u03a9')

关于Python删除额外的特殊unicode字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40690460/

43 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com