Функция 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
🎉 Наградили выпускников "JS bootcamp. Deep Dive into React" 2023!
👨🎓 В этом потоке у нас 4 воронежских выпускника. На торжественное вручение смогли прийти Тимофей и Никита. Сертификаты им вручила наш Software Engineer и менеджер курса Мария Тихонова. Остальные фронтендеры получат свои сертификаты в электронном виде 👍
🌐 В этом году наш курс стал международным. Новый формат доступен в трех странах – Узбекистане, Португалии и России. По традиции программа была насыщенная: только практика и знания без воды. Также у каждого студента был персональный ментор.
👏 Поздравляем всех выпускников с успешным прохождением курса. Вы молодцы! Желаем вам дальнейших успехов в карьере! 📈
#dsr_training_center#JSbootcamp
🔥Последний шанс попасть на курс JS Bootcamp!
Успей подать заявкудо21 января, чтобы прокачать навыки во фронтенд разработке!
❗️Напоминаем: Онлайн-тестирование пройдет 24 января в 17:00. Завтра отправим письмо на почту с подробностями. Обязательно проверьте папку спам или напишите нам на [email protected], если не получите письмо.
#DSR_courses#dsr_training_center#JSBootcamp
👋 Знакомьтесь, Шохрух Тураев — наш Software Engineer (DSR Tashkent) и выпускник JS Bootcamp!
🧑🎓 Шохрух прошёл наш бесплатный курс и получил свою первую работу во фронтенд-разработке в DSR.
🎥 В ролике он поделился своим опытом обучения, и рассказал, почему он выбрал карьеру инженера. Видео на английском.
💻 Начните свой путь в IT — регистрация на курс еще идет!
❗️ Подать заявку.
#DSR_courses#dsr_training_center#JSBootcamp
👋Привет, фронтендеры! Ещё не зарегистрировались на JS Bootcamp?
👨💻 Ментор курса Александр Евстафиади, Senior Software Engineer, расскажет, чем наш курс отличается от остальных. Видео на английском.
Спойлер:
✅ Полностью бесплатный курс от инженеров мирового уровня
✅ Занятия на английском
✅ Персональное менторство 1:1
✅ Возможность претендовать на позицию Junior Front-End разработчика
✅ Цифровой сертификат по окончании
👉 Успей подать заявку.
❓FAQ по курсу.
#DSR_courses#dsr_training_center#JSBootcamp
🗓Делимся расписанием курса JS Bootcamp.
Показали все этапы: Q&A сессия, тестирование, интервью и старт обучения.
➡️ Ответы на вопросы по курсу тут.
⚡️Успейте зарегистрироваться!
#DSR_courses#dsr_training_center#JSBootcamp
ℹ️Расскажем все, что тебе нужно знать про наш бесплатный курс.
Листай карточки и скорее регистрируйся!
❓ Если остались вопросы — присоединяйся к нашей Q&A-сессии 15 января.
#DSR_courses#dsr_training_center#JSBootcamp
🚀Старт регистрации на бесплатный курс по фронтенду!
DSR запускает JS Bootcamp. Deep Dive into React — всего за 80 часов вы освоите навыки junior front-end разработчика.
Курс проходит в онлайн формате и предполагает личное менторство от наших инженеров.
Что вас ждёт:
✅ Прокачаете навыки до уровня junior front-end
✅ Освоите React «изнутри»
✅ Создадите свой первый рабочий веб-проект
✅ Получите сертификат, подтверждающий компетенции
❗️ Лекции на английском языке. Рекомендуемый уровень английского — B1 и выше.
➡️Подавайте заявку прямо сейчас! Количество мест ограничено.
#DSR#DSR_courses#dsr_training_center#JSBootcamp
👨🎓👩🎓 Собрали для вас полезные ресурсы в нашей традиционной рубрике #DSR_knows.
Эти материалы особенно пригодятся тем, кто хочет попасть на наш легендарный бесплатный курс по фронтенду JS Bootcamp. Deep Dive into React!
➡️ Сегодня - краткий обзор интерфейсных технологий:
💥Authentication
✅Sessions and cookies
✅Web Authentication Methods Explained
💥Tool
✅Git Tutorial for Beginners: Command-Line Fundamentals
💥HTML5, CSS
✅Learn HTML5 and CSS3 From Scratch
✅Flexbox
💥Javascript
✅Modern JavaScript Cheatsheet
✅The Modern Javascript Tutorial
💥Networking
✅How the Internet Works for Developers
✅An overview of HTTP
✅DNS Explained
✅REST API concepts and examples
⚡️Регистрация на курс еще идет!
❗️ Обучение будет проходить на английском языке.
#DSR_courses#dsr_training_center#JSBootcamp
‼️ Сегодня закрывается регистрация на курс JS Bootcamp: Deep Dive into React!
❗️Курс проходит на английском языке
🔗Успей подать заявку!
❓Пропустили презентацию курса?
▶️Ищите её в нашей группе Training Center (EN)
❗️Напоминаем: Вступительный экзамен состоится 17 февраля. Письмо с подробностями о тесте отправим завтра. Обязательно проверьте папку спам или напишите нам на [email protected], если не получите письмо.
#DSR_courses#JSBootcamp#JavaScript#dsr_training_center
Итоги года: Учебный центр DSR
Перед Новым годом мы подвели итоги работы Учебного центра DSR за 2023-2024 год. Вместе с командой обсудили достижения, поблагодарили наших менторов, подарили им памятными подарками и зарядились праздничным настроением. 🎁
💡Не без гордости хотим отметить, что:
• Наши курсы остаются бесплатными для всех.
• Уже два года обучение доступно не только в Воронеже, но и в Ташкенте и Порту (города, где работают наши офисы).
• Мы получили заявки от студентов из 28 стран!
Другие интересные цифры представлены в нашей инфографике.
🚀А наш учебный год в самом разгаре!
Совсем скоро стартует курс по фронтенду — JS Bootcamp. Deep Dive into React. Обучение будет проходить на английском, так что это отличная возможность не только улучшить навыки разработки, но и подтянуть язык.
🗓Узнайте больше и регистрируйтесь тут
#DSRTrainingCenter#ITEducation#JSBootcamp
Вы еще не устали отдыхать? 👨🎓👩🎓 Если хотите посвятить свободное время получению новых знаний, то вам поможет наша рубрика #DSR_knows.
➡️ ️ Сегодня - краткий обзор интерфейсных технологий:
💥Authentication
✅ Sessions and cookies - https://vk.cc/cqW5jA
✅ Web Authentication Methods Explained - https://vk.cc/cqW5mR
💥Tool
✅ Git Tutorial for Beginners: Command-Line Fundamentals - https://vk.cc/cqW5oP
💥HTML5, CSS
✅ Learn HTML5 and CSS3 From Scratch - https://vk.cc/cqW5vM
✅ Flexbox - https://vk.cc/cqW5xI
💥Javascript
✅ Modern JavaScript Cheatsheet - https://vk.cc/cqW5zC
✅ The Modern Javascript Tutorial - https://vk.cc/cqW5Dr
💥Networking
✅ How the Internet Works for Developers - https://vk.cc/cqW5Fo
✅ An overview of HTTP - https://vk.cc/cqW5HQ
✅ DNS Explained - https://vk.cc/cqW5K2
✅ REST API concepts and examples - https://vk.cc/cqW5O7
Эти знания пригодятся вам для поступления на наш бесплатный курс по фронтенду 'JS Bootcamp: Deep Dive into React'!
⚡️ Регистрация уже идет https://en.dsr-corporation.com/courses/jsbootcamp/
‼️Обучение будет проходить на английском языке.
#DSRTrainingCenter#ITEducation#JSBootcamp