Функция 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
💼 Ethereum Foundation to Convert 5,000 ETH Into Stablecoins
The Ethereum Foundation announced via X that it will convert 5,000 ETH into stablecoins using CoW DAO’s TWAP feature to fund R&D, grants, and donations. #stablecoinlink
💳 RedotPay raises $107M in a Series B round led by Goodwater Capital to expand #stablecoin payment infrastructure.
➖➖➖➖➖➖➖➖➖
📣@cryptonewstel
✨Vip join⭐️
JUST IN: 🔥 Visa has launched a Stablecoins Advisory Practice to help institutions develop #stablecoin strategies.
➖➖➖➖➖➖➖➖➖
📣@cryptonewstel
✨Vip join⭐️
Paxos Trust is committed to bringing trust and transparency to the digital asset industry. See all of our monthly attestation reports on $PAX by top auditing firm @Withum. As of March 29, total funds of $118,048,457.66 USD and $PAX #stablecoin match exactly https://www.paxos.com/attestation/
Stablecoin yields, mainly generated via lending and borrowing activities, have become a topic of interest among traders, and you should join the conversation!
Learn more about #tether tokens and other #stablecoin yields⬇️
https://tether.to/where-do-stablecoin-yields-come-from/
📝 TokenPocket Monthly Report — July 2025
→ https://medium.com/@tokenpocket-gm/tokenpocket-monthly-report-july-2025-90a2476b9237
In July, TokenPocket focused on technological innovation and community activities, launching a series of measures centered around multi-chain functionality upgrades and enhanced security protection.
🎯#StablecoinWallet
TokenPocket provides the Gas Station service for the TRON network and the zero-fee USDT/USD1 transfer service on BNBCHAIN. This significantly reduces your #stablecoin transaction fee costs and enhances your trading experience.
🎯 LetsBONK on TokenPocket
Track all the trending LetsBonk tokens effortlessly, all in one place.
🎯 Supported XRP, HashKey Chain, and ink networks, making TokenPocket your first choice for a multi-chain wallet.
📍 All In One, All in TokenPocket
🔗https://tp.xyz
🔥🤩🤞
🗣#USDC Circle CEO says stablecoins now let people transact like messaging on WhatsApp, and major institutions agree stablecoins are the future of global money movement. #stablecoin
⚡️The Daily TON: Ethena Brings Innovative Stablecoin to the Ecosystem
#Ethena#stablecoin#TON
The Ethena project plans to enter the TON ecosystem, introducing its unique stablecoin USDe. Unlike traditional stablecoins, USDe uses a hedging strategy to manage volatility, offering users potential yields on their holdings. The project aims to integrate with blockchain ecosystems, including a Telegram mini-app for broader accessibility.
Source: link
@tonlines