Чтобы заменить все небуквенно-цифровые символы с помощью регулярных выражений в Python, вы можете использовать модуль re. Вот несколько способов добиться этого:
Метод 1: использование re.sub()
import re
text = "Hello! How are you?"
clean_text = re.sub(r'\W+', ' ', text)
print(clean_text) # Output: Hello How are you
Метод 2: использование re.sub()с лямбда-функцией
import re
text = "Hello! How are you?"
clean_text = re.sub(r'\W+', lambda x: ' ', text)
print(clean_text) # Output: Hello How are you
Метод 3: использование re.sub()с классом символов
import re
text = "Hello! How are you?"
clean_text = re.sub(r'[^a-zA-Z0-9]+', ' ', text)
print(clean_text) # Output: Hello How are you
Метод 4. Использование re.sub()с экранированием свойств Юникода
import re
text = "Hello! How are you?"
clean_text = re.sub(r'\P{Alnum}+', ' ', text)
print(clean_text) # Output: Hello How are you