Задать вопрос
@LakeForest

Правильно ли я написал регулярку для удаления пробела перед знаком препинания?

Пример:
ехал грека через реку . видит грека в реке рак ? сунул грека руку в реку , рак за руку греку цап !
Надо:
ехал грека через реку. видит грека в реке рак? сунул грека руку в реку, рак за руку греку цап!

Я написал так:
re.sub("[^(\S)](?=[\.,?!])", r"\1", text)

Как думаете, нормально? Как еще можно?
  • Вопрос задан
  • 78 просмотров
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Нетология
    Fullstack-разработчик на Python + нейросети
    20 месяцев
    Далее
  • Skillfactory
    Профессия Python-разработчик
    9 месяцев
    Далее
  • SF Education
    Бэкенд-разработчик на Python
    3 месяца
    Далее
Решения вопроса 1
@dodo512
re.sub("\s(?=[.,?!])", "", text)

Или
re.sub("\s([.,?!])", r"\1", text)
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы