Я хотел бы использовать re.sub для извлечения и переформатирования данных из текста.
Код: Выделить всё
capture = r"([0-9]+)/([0-9]+)/([0-9]+) at ([0-9]+:[0-9]+)"
fmt = r"\3-\2-\1T\4:00Z"
re.sub(capture, fmt, "The 02/10/2023 at 10:55 sometext")
Проблема в том, что результат:
Мне бы хотелось, чтобы весь текст перед первой группой совпадений и после последней игнорировался, чтобы получить что-то вроде этого:
Но я не могу найти способ сделать это. Я думал, что для этого будет флаг опции re.sub, но его нет. Я пытался использовать re.search с group(0), чтобы захватить только ту часть, которую я хочу, но мне нужно, чтобы группы захвата все еще были записаны как регулярное выражение, чтобы иметь возможность использовать замену с помощью re.sub< /code>.
Есть ли простой способ сделать это?
Подробнее здесь:
https://stackoverflow.com/questions/790 ... ure-groups