gpt4 book ai didi

python删除奇怪的撇号和其他不在string.punctuation中的奇怪字符

转载 作者:太空宇宙 更新时间:2023-11-03 16:26:27 26 4
gpt4 key购买 nike

这是我的字符串:

mystring = "How’s it going?"

这就是我所做的:

import string
exclude = set(string.punctuation)

def strip_punctuations(mystring):
for c in string.punctuation:
new_string=''.join(ch for ch in mystring if ch not in exclude)
new_string = chat_string.replace("\xe2\x80\x99","")
new_string = chat_string.replace("\xc2\xa0\xc2\xa0","")
return chat_string

输出:

如果我没有包含这一行 new_string = chat_string.replace("\xe2\x80\x99","")这将是输出:

 'How\xe2\x80\x99s it going'

我意识到排除列表中没有那个看起来很奇怪的撇号:

print set(exclude)
set(['!', '#', '"', '%', '$', "'", '&', ')', '(', '+', '*', '-', ',', '/', '.', ';', ':', '=', '<', '?', '>', '@', '[', ']', '\\', '_', '^', '`', '{', '}', '|', '~'])

如何确保所有此类字符都被删除,而不是将来手动替换它们?

最佳答案

如果您正在处理长文本,例如新闻文章或网页抓取,那么您可以使用“goose”或“NLTK”Python 库。这两个不是预安装的。以下是库的链接。 goose , NLTK

您可以浏览该文档并了解如何操作。

或者

如果您不想使用这些库,您可能需要手动创建自己的“排除”列表。

关于python删除奇怪的撇号和其他不在string.punctuation中的奇怪字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37950564/

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