удалить специальный символ из строки в python - PullRequest
2 голосов
/ 22 февраля 2020

Как и у меня строковая переменная, значение которой указано ниже

string_value = 'hello ' how ' are - you ? and/ nice to % meet # you'

Ожидаемый результат:

Привет, как дела и приятно познакомиться

1 Ответ

2 голосов
/ 22 февраля 2020

Вы можете попробовать просто удалить все несловарные символы:

string_value = "hello ' how ' are - you ? and/ nice to % meet # you"
output = re.sub(r'\s+', ' ', re.sub(r'[^\w\s]+', '', string_value))
print(string_value)
print(output)

Это напечатает:

hello ' how ' are - you ? and/ nice to % meet # you
hello how are you and nice to meet you

Первое решение, которое я использовал, нацелено на все несловесные символы (кроме пробелов), используя шаблон [^\w\s]+. Но тогда есть вероятность, что скопления из двух или более пространств могут остаться позади. Итак, мы делаем второй вызов re.sub, чтобы удалить лишние пробелы.

...