Функция 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
Теннеси день 5
Последний день путешествия на юг
Нэшвиль, столица штата Теннеси. Изначально не было планов на город, но
Познакомиться лично с Анастасией и съесть шашлык в узбекской кафешке ✅
Ознакомиться с музеем Кантри музыки. Где как не в столице кантри? Джонни Кэш, Элвис (тоже ошивался в Нэшвиле), Тейлор Свифт и много других ребят, имена которых я не запомнил ✅
Прогуляться по местному бродвею ✅
Зайти точную копию греческого Пантеона (почему бы и нет? )✅
Удивило количество туристов в городе, четверг 12 дня, каждый первый бар заполнен и из каждого играет живая музыка. Сюда стоит вернуться если захочу напиться красиво под музыку
Теннеси говорю спасибо и пока-пока, это была приятная неделя
#TN
Теннеси день 4
Остановочка в Ноксвиле, от города и его центральной части остались приятные впечатления - маленький, ухоженный, много студентов
В магазинах собирают пожертвования от недавнего урагана
Блюдо южной кухни попробовано: кисло-сладкая жареная курочка в панировке на мягкой вафле
#TN
Теннеси день 3
По моим впечатлениям от парка эмоций больше чем от Гранд-Каньона или Ниагары. Рад, что уже побывал в этих местах и теперь нет идеи-фикс там побывать, можно спокойно кататься по стране без ожиданий от достопримечательностей
По моим наблюдениям только ожидания портят впечатления от любой поездки, лучшее путешествие это путешествие спонтанное и без ожиданий
С Аппалачей прощаюсь, уже хочу вернуться в следующем году
#TN
Доброго утречка, проснулся в 6:40 в своем новом спальном мешке когда мишка томно дышал мне на ушко прям рядом с палаткой, видимо проверял есть ли чего вкусного в палатке, а потом ушел
Бодрит лучше любого кофе ☕️
Как ваш понедельник?
#TN
Дело сделано, кемпинг забронирован
Через две недели закрою ноутбук, оставлю его дома и отправлюсь в Теннесси. Никакой работы, только я буду гонять медведей по лесам Аппалачи
Кентукки пока одно из самых красивых мест в Штатах где я был, не терпится увидеть осенний Аппалачи
Great Smoky Mountains National Park - один из самых посещаемых парков во всей стране, особенно в осеннее время. Год назад я этого не знал, а теперь туда еду. Черные мишки, олени, бобры и птички - мои коллеги в будущем путешествии
По плану 4 ночи в палатке в самом парке и потом в Nashville, столице штата и центре кантри-музыки. Оказывается в большинстве национальных парках нет душа (хотя в одном Мичиганском был), только чистые туалеты и холодная вода, но тоже хорошо
Может даже до Самого большой статуи супермена в Мире доеду. Когда-нибудь напишу пост про забавные/абсурдные достопримечательности Америки. Везде должно быть что-то самое большое, странное и неожиданное. Едешь-едешь, а там статуя огромного мужика. Не просто мужика, а самого большого в МИРЕ! (никто же не додумался до этого)
#TN
«Una de las cosas que yo he criticado es que todos los zoológicos del país no cumplen la función y objetivos para los que han sido creados. Si uno de sus objetivos es crear para los animales un ambiente adecuado, ¿cómo los vas a encerrar en jaulas de hierro oxidado? El encierro en que viven no es tolerable»
¿Qué va a pasar con los zoológicos en Cuba cuando entre en vigor el Decreto Ley de Bienestar Animal?👇
#TN
https://www.tremendanota.com/que-va-a-pasar-con-los-zoologicos-en-cuba-cuando-entre-en-vigor-el-decreto-ley-de-bienestar-animal/
Для себя решил, что хочу изучить регион побольше. Катался в Теннеси (#TN) и Кентукки (#KY), в планах остальные штаты
Помимо книжки Венса хочу посмотреть:
1. Фильм снятый по мотивам книги - Элегия Хилбилли
2. Избавление (1972) - группа людей отправляются в сплав по реке в Аппалачах - насилие и жестокая реальность жизни в горных районах
3. О, где же ты, брат? (2000) - фильм Коэнов, смешение мифологии, фольклора и реальности Южных Штатов США, включая культуру хилбилли
И почитать:
1. Grandma Gatewood's Walk - про бабулю которая в возрасте 67 лет стала первой женщиной, которая прошла всю Аппалачскую тропу (3500 км). Обычная домохозяйка, мать 11 детей из Огайо. Вдохновляющая история
2. The Appalachian Trail: A Biography - история Аппалачской тропы, историческое исследование о создании, развитии и влияния трейла - от основания 1920 до современности
3. The Pioneers: The Heroic Story of the Settlers Who Brought the American Ideal West - история американских поселенцев, которые позже стали ассоциироваться с хилбилли
4. This Land: How Cowboys, Capitalism, and Corruption Are Ruining the American West - больше анализ западной америки, но также упоминает стереотипные образы
Изучаем 📖
Cada 22 de julio se celebra el Día Mundial del Cerebro, fecha que pretende concienciar sobre su potencial, sus riesgos y sus enfermedades.
#LaNotaCuriosa
#TN
#RevistaMarginal
"Sobre transformismo y transformistas no hay casi nada publicado en Cuba, he oído decir en varias ocasiones. Y hasta cierto punto tiene razón ese criterio, pero se omite con desconocimiento a la bibliografía que circula, tal vez callada o silenciada en librerías y bibliotecas cubanas. Por supuesto también considero que hay que seguir narrando, contando y promoviendo ese tipo de publicaciones."
Una cortesía de Claustrofobias y del escritor Yunier Riquenes.
#PorOtrosMedios#TN🏳️🌈
https://www.tremendanota.com/libros-publicados-en-cuba-sobre-transformismo-y-transformistas/