@LakeForest

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

Примеры предложений:
1) мы+ е+хали на+ да+чу --- предложение с ударениями
2) мы ехали на дачу+ --- предложение с ударениями
3) 2 + 2 равно 5 --- предложение без ударений
4) 2 + 2 равно+ четы+ре --- предложение с ударениями
В 4 случае, я заменяю + на слово "плюс", но надо выявить именно те плюсы, где они означают ударение, чтобы заменить на пустоту:
Вывод 4):
два плюс два равно четыре

Самое приближенное, что у меня получилось, но не берет начало слов...
^\w+|\w\+\w$
  • Вопрос задан
  • 94 просмотра
Решения вопроса 1
SoreMix
@SoreMix Куратор тега Python
yellow
import re


text = '''
1) мы+ е+хали на+ да+чу
2) мы ехали на дачу+
3) 2 + 2 равно 5
4) 2 + 2 равно+ четы+ре'''

def repl(match):
    return match.group('word') if match.group('word') else ' плюс '

print(re.sub(r'(?=\w\+)(?P<word>\w)\+|\s(\+)\s', repl, text))
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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