Функция sub в regex может принимать функцию в качестве аргумента repl.
📄 Из документации:
If repl is a function, it is called for every non-overlapping occurrence of pattern. The function takes a single match object argument, and returns the replacement string.
То есть для каждого совпадения будет вызвана функция для вычисления замены вместо замены на одну и ту же строку для всех совпадений.
Иными словами, для замены разных совпадений на разные строки не потребуется запускать re.sub() много раз для каждой строки замены. Достаточно определить функцию, которая вернёт строку для каждого из совпадений.
Описание слишком запутанное🤔, давайте лучше рассмотрим на простом примере:
Создаем карту замены. То есть какие строки на какие требуется менять.
remap = {
'раз': '1',
'два': '2',
'три': '3',
'четыре': '4',
'пять': '5',
}
Пишем функцию поиска строки для замены. Единственным аргументом будет объект re.Match.
Используя данные этого объекта мы вычисляем замену on-the-fly!
def get_str(match: re.Match):
word = match.group(1)
return remap.get(word.lower()) or word
Пример текста.
text = '''Раз Два Три Четыре Пять
Вместе будем мы считать
Пять Четыре Три Два Раз
Мы считать научим вас
'''
Теперь запускаем re.sub и вместо строки замены (repl) подаём имя функции.
(Данный паттерн ищет отдельные слова в тексте)
>>> print(re.sub(r'(\w+)', get_str, text))
1 2 3 4 5
Вместе будем мы считать
5 4 3 2 1
Мы считать научим вас
Думаю, достаточно наглядно 🤓
#libs#regex
#Deadpool🔴⚫
El insider Daniel Richtman indica que los rumores sobre Lady Deadpool son correctos y el personaje aparecerá en Deadpool 3. Richtman dijo que su traje será igual al de los cómics.
@MARVELNOTICIAS📮
#Deadpool🔴⚫
BRAD PITT IBA A INTERPRETAR A 'CABLE'.
Rob Liefeld creador de Deadpool e involucrado en las películas del mercenario confirma que Brad Pitt iba a interpretar a Cable en Deadpool 2.
Finalmente Josh Brolin (Thanos en el UCM) fue el que interpretó a Cable y Brad Pitt tuvo un cameo como el personaje Vanisher, uno de los miembros de la X-Force.
@MARVELNOTICIAS📮
#Deadpool🔴⚫
Según el insider "CanWeGetSomeToast", tanto Wolverine como Deadpool estarían detenidos en la AVT para luego escapar y llegar a todos los escenarios filtrados anteriormente.
@MARVELNOTICIAS📮
#Deadpool🔴⚫
LA TVA CONFIRMADA Y... ¿LOS 4 FANTASTICOS? ¿MAD MAX?
Se han revelado nuevas imágenes del set de rodaje de Deadpool 3 en el que se ve a Sapo interpretado por Ray Park (X-men 2000) en una versión del carro de Los Cuatro Fantásticos.
El conocido Fantasti-Car de los cómics en algunas ocasiones ha caído en manos de Deadpool y así podríamos ver una referencia a ello.
Además también se filtró una camioneta que hace referencia a Moon Knight y el vehículo de Red Skull. También vemos a un agente de la TVA y en el fondo el logo de Fox destruido.
Parece que veremos algunas referencias a Mad Max. 👀
@MARVELNOTICIAS📮
#Deadpool🔴⚫
Nuevas imágenes desde el set de Deadpool 3 revelan referencias a Moon Knight y al auto de Red Skull visto en Capitán America The First Avenger.
@MARVELNOTICIAS📮
#Deadpool🔴⚫
¡LOS CONFIRMADOS!
Este es el elenco 100% confirmado hasta ahora para Deadpool 3:
- Ryan Reynolds como Deadpool
- Hugh Jackman como Wolverine
- Morena Baccarin como Vanessa
- Jennifer Garner como Elektra
- Briana Hildebrand como Negasonic Teenage Warhead
- Rob Delaney como Peter
- Stefan Kapičić como Colossus
- Karan Soni como Dopinder
- Leslie Uggams como Blind Al
- Shioli Kutsuna como Yukio
- Matthew Macfadyen como Mr. Paradox
- Emma Corrin en un rol desconocido
@MARVELNOTICIAS📮
#Deadpool🔴⚫
💥 X-23 VOLVERÁ EN DEADPOOL 3 💥
Daniel RPK nuestro insider de confianza revela que Marvel Studios traerá de vuelta a la actriz Dafne Keen para interpretar a X-23 en 'DEADPOOL 3'
La actriz hace meses dijo que le encantaría volver a interpretar al personaje porque le encantó y ocupa un lugar muy especial en su corazón.
@MARVELNOTICIAS📮
#Deadpool🔴⚫
SE BURLARAN DE ESA ESCENA😱
En 'DEADPOOL 3' se hará burla a la icónica escena de los portales de 'AVENGERS ENDGAME' según 'Can We Get Some Toast'.
Como ya se ha dicho veremos muchas variantes de Deadpool y en ese momento veríamos una burla/parodia a la escena de los portales.
@MARVELNOTICIAS📮
#Deadpool🔴⚫
¡EL VERDADERO MULTIVERSO!
El insider Aaron Adams reporta que Marvel Studios le ha dado "carta blanca" a Shawn Levy para que cualquier actor que él quiera pueda volver a manera de cameo en la tercera entrega de Deadpool.
La meta sería que la audiencia general vuelva a sentirse atraído al MCU y Levy es conocido por lograr satisfacer tanto a fans como a público casual.
@MARVELNOTICIAS📮