Функция 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
В нишу низкопольных поездов для северных Скандинавских стран заходит ещё один производитель. Испанская компания CAF заключила контракт со шведской лизинговой компанией Transitio о поставке 20 электропоездов и 8 дизель-электропоездов CAF Civity Nordic. Стоимость контракта - 250 млн. евро, начало поставок - конец 2023 года, в перспективе возможен опцион на ещё 26 составов. Transitio будет сдавать новые поезда в аренду региональным властям, а те, в свою очередь, передадут их железнодорожным операторам для выполнения заказов на пассажирские перевозки. Новые поезда будут курсировать в округах Йёнчёпинг, Кальмар, Кроноберг и Блекинге.
#за_низкий_пол
#CAF
#Швеция
Seven Eritrean National Soccer Team Players Disappear. Read more.
https://borkena.com/2026/04/07/seven-eritrean-national-soccer-team-players-disappear/#Eritrea#soccer#CAF
News: #Ethiopia submits 2028 AFCON bid, seeking fourth hosting after 50-year gap
Ethiopia has formally submitted a bid to host the 2028 Africa Cup of Nations (#AFCON), seeking to stage the continental tournament for a fourth time and for the first time in more than five decades, according to a report by state-owned media citing the Ethiopian Football Federation (#EFF).
The report said the bid was officially lodged with the Confederation of African Football (#CAF), marking Ethiopia’s return to contention for hosting the tournament it last staged in 1976. Ethiopia previously hosted AFCON in 1962, 1968, and 1976, and won the title on home soil in 1962.
If awarded hosting rights, Ethiopia would become the joint second country to stage the Africa Cup of Nations the most times, behind only Egypt (5).
Bahiru Tilahun, Secretary General of the Ethiopian Football Federation, was quoted in...
https://www.facebook.com/AddisstandardEng/posts/pfbid02RBrfdanpeSSvrR4tcTWEyWrsRV4djoQDikrUvipckET9MttjzYM8t98rmQ3EG2o3l
🔵CAF инвестирует $2,5 млрд в “голубую экономику” Латинской Америки и Карибского региона
На Blue Economy and Finance Forum (BEFF) в Монако CAF — Банк развития Латинской Америки и Карибского региона — объявил о новой инвестиционной программе: $2,5 млрд до 2030 года для поддержки устойчивой экономики и сохранения океанов региона.
Основные направления финансирования
🔹 Сохранение и восстановление морских экосистем
🔹 Возобновляемая энергия из океанов
🔹 Ответственный туризм и рыболовство
🔹 Декарбонизация портов и судоходного транспорта
🔹 Развитие технологий: морской биотех, цифровые платформы
🔹 Институциональная поддержка и морская дипломатия
Стратегический контекст
🔹 Новая сумма удваивает предыдущий обязательный уровень — $1,25 млрд, который уже был полностью мобилизован в период 2022–2025 ($1,32 млрд фактически выделено на 35 проектов в 16 странах).
🔹 Всё это входит в стратегию CAF по “голубой экономике” 2030: сочетание устойчивого развития, финансирования, экодипломатии, образования и поддержки прибрежных сообществ.
Почему это важно
🔹 Связанно с подготовкой к UNOC3 (3-я ООН конференции по океанам) в Ницце
🔹 Направлено на повышение устойчивости экосистем, инновации и улучшение благосостояния прибрежных регионов
🔹 CAF подтверждает свой статус основного инвестора в "голубую" трансформацию региона.
#CAF#ГолубаяЭкономика#УстойчивоеРазвитие#ЛатАм#Карибы#Инвестиции#BEFF
👉Всегда свежие новости о странах Латинской Америки!