Функция 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
🚨🚨Celsius' wallet 0x4A87 received 428,105 $ETH ($784M) unstaked from #Lido Finance 10 hrs ago.
➡️ Lido Finance transferred the full amount of $ETH 22 hours after Celsius's request.
➡️ There are 274 $stETH left pending to be withdrawn in the Lido withdrawal queue.
⚠️ Keep an eye on Celsius's next move with this substantial amount of available $ETH.
👉 Addresses:
1. Celsius 0x4a87
2. Lido withdrawal queue
🌟 A savvy trader, who once amassed millions profit, just moved 1,901 $ETH at $1,826($3.47M) to #Binance 14 hours ago.
➡️ Previously earned an estimatedprofit of $2.06M (ROI: 25%).
➡️ This latest trade yielded a modest $20K profit.
🤔 Speculation arises that the ability to convert $stETH to $ETH from #lido v2 may have influenced his decision.
👉 More details: https://twitter.com/spotonchain/status/1658728334367551489
🗣 Новый день, новый Governance Voting в котором я принимаю участие, прокачивая свои DAO скиллы и неся свободу и децентрализацию в наш бренный #Web3 мир. Этот 2023 год можно точно назвать #bullrun для всех децентрализованных protocol governance и #DAO. Вся интеллектуальная активность в сети, аирдропы и пользователи сейчас здесь.
База: большие протоколы/блокчейны управляются сообществом владельцев токенов и их делегатами. Делегат - это пользователь (кошелек) у которого может и не быть токенов протокола, но он получил делегацию "голосов" от других участников и может теперь представлять их интересы при голосовании за предложения (чем-то похоже на депутата от народа).
Процесс #DAO следующий:
- активный участник делает детальное предложение и выносит его на обсуждение. Место: форум проекта.
- после обсуждения проекта, предложение выносится на голосование оффчейн (без проведения транзакции, а только с помощью отправки подписи). Место: snapshot.org
- после принятие предложения на snapshot оно переносится уже на onchain голосование и после исполняется. Место: tally.xyz
Основные задачи управления ДАО - это обновление протокола (экономические параметры), перенос протокола на новую сеть (лицензионные параметры), управление казначейством (распределение нажитого имущества или токенов проекта в целях поощрения сообщества протокола). В частных случаях это еще и координация управления операционной, юридической и политической активностью протокола.
Список #DAO в которых я не последний человек принимаю участие:
- Uniswap $UNI - Forum / Snapshot [treasury - $1.5B]
- Arbitrum $ARB - Forum / Snapshot [treasury - $2.8B]
- Optimism $OP - Forum / Snapshot [treasury - $1.5B]
- Frax $FXS - Forum / Snapshot [mcap - $1.4B]
Далее в моем списке: #Lido, #AAVE, #Straknet, #MakerDAO
… [ч1] продолжение в следующем посте 🟢
Trump Family Spends Big on Crypto
The Trump family crypto project, World Liberty Financial (WLFI), made significant moves in the crypto market:
- Purchased 10.61 million TRX for 2.65 million USDT.
- Acquired 3,079 ETH for 10 million USDC.
- Converted and staked 4,700 ETH into stETH via Lido, totaling 14,701.58 ETH worth about $49 million.
Check more details here: Onchain Lens.
Additionally, the SEC has rescinded the controversial accounting guidance SAB 121 that affected Bitcoin custody by banks. More insights at Leviathan News and The Block.
#Crypto#Bitcoin#SEC#TRX#ETH#USDC#Ethereum#WorldLibertyFinancial#Lido#stETH#Trump#SAB121#Accounting#Finance#USD#WhaleAlert#USDT
Major ETH Transfer and Lido V3 Launch
🚨 29,250 #ETH (~$77.8M) transferred from #Binance to an unknown wallet, according to Whale Alert. In other news, Lido has launched V3 with customizable ‘stVaults,’ enhancing Ethereum staking flexibility. More details can be found here.
🔍 Analysts from Merkle Science report that in 2024, investors lost over $500M due to fraud linked to meme tokens, primarily through social engineering attacks on platforms like X and YouTube.
📈#HongKong now recognizes $BTC and $ETH for investment visa applications, positioning itself as a competitive hub for crypto investors.
💰 DeFi platform Legend has secured $15M from Andreessen Horowitz and Coinbase Ventures.
Stay informed! 🔗Lido V3 Announcement
## Keywords: #ETH#Lido#Binance#Crypto#MemeToken#HongKong#BTC#VC#DeFi#Legend#InvestmentVisa#WhaleAlert#Fraud#SocialEngineering#Ethereum#Investment#CryptoNews#Blockchain#Finance#CryptoInvestors#DecentralizedFinance
#ETH#Lido#Binance#Crypto#MemeToken#HongKong#BTC#VC#DeFi#Legend#InvestmentVisa#WhaleAlert#Fraud#SocialEngineering#Ethereum#Investment#CryptoNews#Blockchain#Finance#CryptoInvestors#DecentralizedFinance