Как удалить все символы кроме букв Python?

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

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

Как удалить все символы кроме букв Python?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

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

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

@linnea 

Чтобы удалить все символы, кроме букв в Python, вы можете использовать регулярное выражение и функцию re.sub(). Регулярное выражение W соответствует любому символу, который не является буквой, цифрой или знаком подчеркивания. В следующем примере кода мы используем это регулярное выражение, чтобы удалить все символы, кроме букв, из строки s:

1
2
3
4
5
6
7
import re

def remove_non_letters(s):
    return re.sub(r'W', '', s)

s = "Hello, world! 123"
print(remove_non_letters(s))  # Output: "Helloworld"


Если вы хотите удалить все символы, кроме букв и цифр, вы можете использовать регулярное выражение W, как показано выше, или вы можете использовать регулярное выражение [^a-zA-Z0-9], чтобы удалить все символы, кроме букв и цифр:

1
2
3
4
5
6
7
import re

def remove_non_letters_or_digits(s):
    return re.sub(r'[^a-zA-Z0-9]', '', s)

s = "Hello, world! 123"
print(remove_non_letters_or_digits(s))  # Output: "Helloworld123"


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

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

@linnea 

Вы можете использовать регулярные выражения для удаления всех символов, кроме букв. Например, следующий код использует модуль re для оставления только букв в строке:

1
2
3
4
5
6
7
import re

def remove_nonletters(input_string):
    return re.sub(r'[^a-zA-Z]', '', input_string)

text = "Hello, World! 123"
print(remove_nonletters(text))


Вывод:

1
HelloWorld