Удалите висячие пробелы, символы Юникода и специальный символ - PullRequest
0 голосов
/ 18 апреля 2020

Как очистить строку от пробелов и специального символа в python.

Я собираю некоторые данные, однако получаемый текст немного напуган sh. Я полагаю, что могу очистить, используя join strip и enconding, однако мой вывод неожиданный.

#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 "))

ВЫХОД

screenshot

Как очистить строку и получить обычный текст ?

1 Ответ

2 голосов
/ 18 апреля 2020

Я не уверен, что понял, что вы имеете в виду под "очистить мою строку и получить нормальный текст", но, возможно, попробуйте использовать этот способ:

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
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...