首页 > 解决方案 > 删除尾随空格、unicode 字符和特殊字符

问题描述

如何从 python 中的空格和特殊字符中清除字符串。

我正在抓取一些数据,但是得到的文本有点乱码。我想我可以清理使用join stripenconding但是我的输出是出乎意料的。

#cleaner function

def string_cleaner(rouge_text):
             return (" ".join(rouge_text.strip()).encode('ascii', 'ignore').decode("utf-8")).replace("\\","")

print(string_cleaner("\n\t\t\t\t\t\t\t\t\t Nokia 9 PureView- 5.99\ "))
print(string_cleaner("\n\t\t\t\t\t\t\t\t\tMi Electronic Scooter\uff08Black\uff09EU\t \t\t\t\t\t\t\t\t "))

输出

截屏

如何清理字符串并获取正常文本?

标签: pythonpython-unicoderemoving-whitespaceunicode-string

解决方案


我不确定“清理我的字符串并获取普通文本”是什么意思,但也许尝试使用这种方式:

def string_cleaner(rouge_text):
    # "" instead of " " in .join() method
    return ("".join(rouge_text.strip()).encode('ascii', 'ignore').decode("utf-8")).replace("\\","")

print(string_cleaner("\n\t\t\t\t\t\t\t\t\t Nokia 9 PureView- 5.99\ "))
print(string_cleaner("\n\t\t\t\t\t\t\t\t\tMi Electronic Scooter\uff08Black\uff09EU\t \t\t\t\t\t\t\t\t "))

输出:

>>> print(string_cleaner("\n\t\t\t\t\t\t\t\t\t Nokia 9 PureView- 5.99\ "))
Nokia 9 PureView- 5.99
>>> print(string_cleaner("\n\t\t\t\t\t\t\t\t\tMi Electronic Scooter\uff08Black\uff09EU\t \t\t\t\t\t\t\t\t "))
Mi Electronic ScooterBlackEU

推荐阅读