BSB
@BSB
Не стыдно не знать, стыдно не хотеть узнать

Замена вхождений regex, разбирая каждое вхождение в Python?

Пример текста: "Что вы %сам/сама/сами% %смог/смогла/смогли% сделать для этого?
Текст вводится пользователем, известно лишь правило: мужской род, женский род, множественное, разделённые слешем, ограниченные знаком %.
Нужно оставить один из вариантов в зависимости от применения текста.
Нет ли какой-нибудь функции в Python 3, предусматривающую создание собственного обработчиках каждого вхождения?
Ну или другое решение...
  • Вопрос задан
  • 42 просмотра
Пригласить эксперта
Ответы на вопрос 1
Vindicar
@Vindicar
RTFM!
Читаем доку.
The sub() method takes a replacement value, which can be either a string or a function, and the string to be processed.
replacement can also be a function, which gives you even more control. If replacement is a function, the function is called for every non-overlapping occurrence of pattern. On each call, the function is passed a match object argument for the match and can use this information to compute the desired replacement string and return it.


Т.е. пишешь функцию, которая обрабатывает одиночную замену желаемым образом, и передаёшь её в метод sub() регулярки.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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