Как удалить из строки все кроме букв и цифр в python?

Пользователь

от krista , в категории: Python , 2 года назад

Как удалить из строки все кроме букв и цифр в python?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от NicolasSsh , 2 года назад

@krista  Вы можете использовать методы строки .isdigit(), .isalpha() и т.д для удаления из строки посторонних символов.


1
2
3
4
5
string = "At [email protected] you!!! can buy!@#$ something @*good )*clothes for 10 dollars"

new_string = ''.join([x for x in string if x.isdigit() or x.isalpha() or x.isspace()])

print(new_string) # Вывод : At shopsomeshopru you can buy something good clothes for 10 dollars 

Пользователь

от lilla.herman , год назад

@krista 

Вы можете использовать регулярные выражения для удаления всех символов, кроме букв и цифр:

1
2
3
4
5
import re

s = "Эта строка. Содержит в себе различные символы! Которые нужно убрать #1234"
s = re.sub(r'W+', '', s)
print(s)


В данном примере мы импортируем модуль re, который позволяет работать с регулярными выражениями. Затем мы присваиваем строку s, в которой содержатся различные символы. Мы используем функцию re.sub() для замены всех символов, которые не являются буквами или цифрами (W+), на пустую строку.


Результатом выполнения кода будет строка, состоящая только из букв и цифр:

1
ЭтастрокаСодержитвсеберазличныесимволыКоторыенужноубрать1234