Функция 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
Китайский бренд VidaBay выпустил магниты на холодильник, в которые можно загружать фотографии со смартфона.
Внутри находится дисплей наэлектронных чернилах, благодаря которому появляется эффект полароида, а сами фото передаются со смартфона через NFC. Батарейки нет — энергия берётся прямо при передаче изображения. Изображение просто «застывает», не требуя ни питания, ни зарядки.
Стоит такое устройство 36 долларов
r/#interesting
#interesting
🐝 After discovering a food source, bees communicate it to others through a “dance.” The dance provides precise information about direction and distance, which has been confirmed by experiments. One type of dance is used for nearby locations, and another type for distant ones. Even when the sun is not visible, they can determine direction using certain light spectra.
☘️Read the latest environmental news on the @ekologuz page. Follow us and send your suggestions and wishes via @eklguz_bot
Instagram | Facebook | Twitter | Sayt | Youtube.
Стэнли Кубрик в своём последнем фильме «С широко закрытыми глазами» показал реальную жизнь элит и предсказал дело Эпштейна — такая теория сейчас набрала популярность в сети.
В фильме герой случайно попадает на тайную элитную оргию с масками, ритуаламии безнаказанностью, понимая, что он увидел мир, в который ему вход закрыт.
Согласно теории, это скрытая метафора реальных элитных сетей сексуальной эксплуатации, которые сейчас всплывают в материалах по Эпштейну.
Масло в огонь подлил Роджер Эвери, являющийся учеником Кубрика. Он рассказал, что первоначальныйсценарий фильма был посвящен обнаружению элитной педофильской сети. После просмотра монтажной версии фильма студия потребовала удалить упоминания о педофилии. Кубрик пытался защитить свой фильм, новнезапно погиб за несколько дней до премьеры.
r/#interesting
The Hungarian Parliament in Budapest is a stunning landmark on the Danube. Completed in 1904, it features a grand dome, intricate details, and a mix of Neo-Gothic, Renaissance, and Baroque styles.
@Viral_Today / #interesting
Karl Griesbaum’s singing bird boxes, made since 1905, use a tiny bellows and whistle system to create lifelike birdsong while a mechanical bird moves. These rare antiques, often in gilded brass or enamel, can sell for $2,000–$10,000+ today.
@Viral_Today / #interesting
Pulse Island on Lulu Island, Abu Dhabi, is an interactive light installation by Rafael Lozano-Hemmer, visualizing participants’ heartbeats with 4,000 synchronized light bulbs.
@Viral_Today / #interesting
Perchten are devil-like figures from Alpine regions of Austria and Bavaria who parade through the streets in the winter in an ancient folk tradition.
They look scary on purpose to drive away evil spirits and bring good fortune.
@Viral_Today / #interesting
This powerful visual shows a year’s worth of diabetes supplies for managing type 1 diabetes—every sensor, pump site, and vial of insulin
@Viral_Today / #interesting
Traditional Chinese rice paper making. Machines can’t replicate the delicate touch and skill needed to create rice paper, essential for fine Chinese art and calligraphy.
@Viral_Today / #interesting
🌈 Rainbows aren’t actually bows—they’re cones! What we see as a bow is just the visible part of a much larger cone of light. Fun fact: rainbows move with the sun, meaning you might be standing over a potential rainbow at some point every day!
@Viral_Today / #interesting
This century-old machine might look terrifying, but it’s actually a self-playing piano powered by vacuum suction! By carefully pumping air out, it controls the keys to play music all on its own.
@Viral_Today / #interesting