Функция 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
🍿 'The Bondsman': Kevin Bacon Returns from the Dead to Hunt Demons
📆Estreno: April 3, 2025
🎭Género: #Supernatural · #Action
Kevin Bacon ('Tremors', 'Footloose') is back and better than ever as Hub Halloran, a bounty hunter resurrected by the Devil himself to recapture escaped demons. 🔥 With its mix of 'RIPD' and 'Evil Dead' vibes, this Amazon Prime series promises a wild ride of action and dark humor.
What stands out is how it blends elements of classics like 'Brimstone' and 'Reaper', but with a fresh twist—Halloran must confront his own past while battling demons with chainsaws and shotguns. 😈 The dynamic with his estranged family adds emotional depth to this tale of redemption.
With Damon Herriman ('Once Upon a Time in Hollywood') and Beth Grant ('The Mindy Project') rounding out the cast, 'The Bondsman' feels like a worthy successor to beloved supernatural shows. 🍿✨
🍿 The Conjuring: Last Rites — The Warrens’ Paranormal Farewell
📆Release: September 5, 2025
🎭Genre: #Horror · #Supernatural
🍿Follow Movie
The Warrens are back for one final ride. The Conjuring: Last Rites draws from the real-life Smurl haunting — a family tormented by a demonic presence for over a decade. Vera Farmiga and Patrick Wilson return in what promises to be an emotional and dangerous sendoff. 🎬👻
It’s directed by Michael Chaves (The Nun II, The Curse of La Llorona), the same filmmaker behind The Devil Made Me Do It — the third installment that leaned more into courtroom drama than true horror. And yes, many of us still miss James Wan’s chilling touch. That said, the trailer teases a darker, more personal finale. A fitting end... or just another soulless exorcism? Either way, I’m sleeping with the lights on. 💡💀
🍿 'Presence': Soderbergh Revolutionizes Horror from the Other Side 👻🎬
📆Release: January 24, 2025
🎭Genre: #Supernatural · #Suspense
Steven Soderbergh brings us 'Presence', where Lucy Liu leads a family confronting an invisible entity in their home. The narrative from the ghost's perspective offers a fresh and tense take on the genre. The minimalist cinematography, utilizing a Sony A9iii, adds realism and suspense. Although some expected more horror, the blend of family drama and supernatural elements creates a unique atmosphere. With a script by David Koepp and high acclaim at the Sundance Film Festival, 'Presence' promises to be a compelling cinematic experience. 🔮✨
🇬🇧Supernatural #1-3
🇷🇺Сверхъестественное #1-3
Культовый сериал CW возвращается в комиксы! В этой истории Сэм Винчестер еще учится в Стенфордском университете и приезжает в Шотландию по программе обмена. Казалось бы, ради учебы, но все меняет загадочная незнакомка...
#комикс#comics#сверхъестественное#supernatural
#dc
🎶Правильный ответ на вчерашний интерактив👇
✅ Да, это Santana — легендарный коллектив, который стал настоящим мостом между роком и латинскими ритмами. Группа под руководством мексикано-американского гитариста Карлоса Сантаны произвела фурор на церемонии Грэмми 2000, получив 9 наград за один вечер — рекорд, который до сих пор вызывает восхищение.
Кто такой Карлос Сантана
Он родился в Мексике, в штате Халиско, и начал играть на скрипке ещё в детстве. Позже его заворожила гитара и... афро-кубинская перкуссия. В 1960-х он собрал группу, которая громко заявила о себе на легендарном фестивале Вудсток в 1969 году — с мощным выступлением, в котором электрогитара встретилась с латиноамериканскими барабанами.
Что сделало музыку Santana особенной
Они первыми смешали психоделический рок, блюз и джаз с латиноамериканскими ударными инструментами — например, с конгами и тимбалами (это барабаны, которые часто используют на Кубе и в Пуэрто-Рико). Получился совершенно новый, энергичный и эмоциональный стиль.
Самый громкий успех пришёл с альбомом Supernatural (1999), где группа сотрудничала с такими артистами, как Rob Thomas, Wyclef Jean, Eric Clapton и другими. Хит Smooth стал гимном целого поколения и звучит до сих пор.
С тех пор Santana стали символом латиноамериканского вклада в мировую музыку. И хотя сам Карлос давно живёт в США, свои мексиканские корни он всегда подчёркивает.
Факт напоследок
В честь Карлоса Сантаны названа улица в его родном городе Аутлан, а в 2003 году журнал Rolling Stone включил его в список 15 лучших гитаристов всех времён.
#Santana#КарлосСантана#Грэмми#ЛатинскаяАмерика#МузыкальныеФакты#ИсторияРока#Латинорок#TelegramQuiz#Smooth#Supernatural#ЛегендыМузыки
👉Всегда свежие новости о странах Латинской Америки!
Готовлюсь к новой роли в театре😁 Метла на парковке, котёл кипит, бусы из глаз хомяков надела, куриные лапки в карманах, крем Азазелло откупорила, не закрывайте Ваши форточки, я вылетаю😂
#ordinarysunday#sundayfunday#littlewitch#miracle#charmed#supernatural#happyhalloween#trickortreat#хэллоуин#ночьвсехсвятых #🧞♀️ #🧝🏻♀️ #🧚🏻♀️ #🧙🏻 #🎃#pumpkin#hellonovember#осерчала#разгневалас#затаилас#насупилас#барыня#боярыня #😂#могуеслихочу