@LakeForest

Как модифицировать регулярное выражение, в котором все + перед гласной заменяются на пустоту, кроме исключительных ситуаций?

Регулярное выражение: r'\+(?i)([аеёиоуыэюя])'
Исключение: хелло+у

Тексты:
х+елло++у
хелло+у
л+и+шние зна+ки н+а д+о удаля+ть
но+ зде+сь всё+ ве+рно 2 + 2 = 4

Правильно:
хелло+у
хелло+у
ли+шние зна+ки на до удаля+ть
но+ зде+сь всё+ ве+рно 2 + 2 = 4
  • Вопрос задан
  • 80 просмотров
Решения вопроса 2
@dodo512
r'\+(?i)([аеёиоуыэюя])(?<!о.у)'
Ответ написан
Комментировать
MinTnt
@MinTnt
import re

s = '''х+елло++у
хелло+у
л+и+шние зна+ки н+а д+о удаля+ть
но+ зде+сь всё+ ве+рно 2 +++ 2 = 4
'''
print(re.sub(r'(?i)(([^аеёиоуыэюя\s])\++)', r'\2' ,s))
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы