Функция 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
Гендиректор Северстали: Мы сокращаем капвложения в 2026 году на 24%, сокращаем административные расходы и расходы на оплату труда 5%, переносим индексацию зарплат
#CHMF
Ситуация в отрасли становится всё сложнее. Спрос на сталь в России упал на 31% с начала 2024 года, что привело к резкому снижению загрузки у наших ключевых клиентов и падению цен. Реальность такова, что полностью избежать мер оптимизации невозможно", - сообщил Александр Шевелев.
Читать далее
👉https://smartlab.news/i/184057
мы в max
Северсталь считает, что вероятность выплаты дивидендов по итогам 2026 года невелика — РБК Инвестиции
Читать далее
👉https://smartlab.news/i/177720
#CHMF
Северсталь МСФО 1К 2026 г
♦️Чистая прибыль выросла до 57 млн руб. против 21 млрд руб. годом ранее.
♦️Выручка снизилась на 19%, до 145,3 млрд руб.
♦️EBITDA — снизилась на 54%, до 17,9 млрд руб.
♦️Рентабельность EBITDA упала до 12% против 22%,
♦️Производство стали сократилось на 4%.
♦️Компания отказалась выплачивать дивиденды.
#CHMF
Сайт | Бот | Invest Era
Forbes: за год в мире появилось около 400 новых миллиардеров
В рейтинге миллиардеров теперь 3428 человек — на 400 больше, чем год назад. За последние 12 месяцев на планете в среднем ежедневно появлялся как минимум один новый миллиардер.
Совокупное состояние участников списка выросло до рекордных $20,1 трлн, а средний капитал увеличился до $5,8 млрд. Самым богатым россиянином стал Алексей Мордашов #CHMF — $37 млрд и 57-е место в мировом рейтинге.
Сайт | Бот | Invest Era
Северсталь РСБУ 1 кв. 2026 г.:
📉 выручка ₽134,19 млрд (-16,0% г/г)
📉 чистый убыток ₽2,75 млрд (против прибыли ₽11,8 годом ранее) #CHMF
Читать далее
👉https://smartlab.news/i/188281
мы в max
Северсталь МСФО
4кв 2025г:
📉выручка ₽169,5 млрд (-16% г/г)
📉убыток ₽17,74 млрд против прибыли ₽33,5 млрд годом ранее,
2025г:
📉выручка ₽712,9 млрд (-14% г/г)
📉прибыль ₽32 млрд (-79% г/г)
- Экспорт стали из Китая за весь год вырос на 7,5% г/г до 119,02 млн тонн, что оказывает давление на цены по всему миру
- Спрос на сталь в России существенно снизился (в 2025-м на 14% г/г)
- Компании удалось увеличить продажи металлопродукции на 4% г/г до 11,24 млн т
- Масштабные инвестиции привели к отрицательному свободному денежному потоку в - ₽30,5 млрд в 2025 году
- Показатель Чистый долг/EBITDA составил 0,16х на конец года
- В 2026 году мы ожидаем дальнейшее снижение спроса на сталь
"Мы рассчитываем сохранить полную загрузку нашего производства в 2026 году, планируя произвести около 11,3 млн тонн стали", - Александр Шевелев, гендиректор.
Читать далее
👉https://smartlab.news/i/177477
#CHMF
💿#chmf
Сегодня видим попытку войти обратно в канал.
☝️Также значение осциллятора RSI переваливает выше 50 пунктов - зона покупателя.
🫱Осталось закрыть сегодня сессию выше 966, что станет сигналов на вход в лонг на следующей сессии.
Тэйк - 1010 (средняя линия канала)
Стоп-лосс - 938 (под минимум сегодняшнего дня).
‼️Для входа в лонг жду закрытие дня выше 966, а пока наблюдаем!
Не иир
💿#chmf
Всем доброго дня!!🤝🤝🤝
На утреннем проливе цена акции достигла ретеста сверху красного восходящего уровня.
Беру от текущих с лонг по 921.6
Тэйк - 950 (верх боковика и закрытие утреннего гэпа)
Стоп - лосс - 903 (под лой боковика)
Не иир
💿#chmf
Всем доброго дня!!!🤝🤝🤝
Многие активы сейчас под уровнями, и входить в них как бы не очень.
Но вот Северсталь подбирается к ретесту черного уровня!
Заметьте: ранее, в конце мая котировки уже отбивались от данной линии был рост около 20%
И сейчас я жду отскока от данной линии и поэтому ставлю лимитную заявку от диапазона 860-875
Цель - 980 (проверка низа боковика снизу)
Не иир
💿#CHmf
☄️Открыл среднесрочную спекуляцию.
Причины:
⚠️Котировки на сильном горизонтальном уровне поддержки, от которой отскакивал не единожды.
✔️Цель - верх боковика (1070)
☝️Стопы не ставлю, идея среднесрочная спекуляция.
Не иир
💿#CHMF ( Северсталь)
Всем доброго дня!🤝🤝🤝
Сразу к идеи без пафоса!
☄️Сегодня котировки тестируют середину восходящего канала 1082, откуда стоит откупать плюс / минус полпроцента.
Также сегодняшней свечой идет тестирование верха боковика сверху, который длился предыдущие несколько месяцев
✅Цель - 1160 (верх канала).
Закрепление под серединой канала - сигнал на падение к низу канала 1010, где также откуплю.
А Вы начали лонговать?
Да, откупаю - 👍
Нет, жду еще снижение на текущей неделе - 🤔
Не иир
💿#CHMF (Северсталь)
Всем доброго дня! 🤝🤝🤝
Сразу в делу, без лирики!
📈Котировки Северсталь закрепились над верхом нисходящего канала, заметьте: объём имеет восходящей характер, что лишь усиливает бычии настрои.
☄️Откупать планирую на проверке сверху вниз от пробитого уровня по 1053
✔️Ближайшая цель - 1110 (скользящая)
❌Отмена сценария роста - закрепление ниже верха канала по итогам дня (ниже 1053).
☝️При срабатывание стопа буду ждать поход на середину канала 970, где обратно откуплю.
Не иир