Функция 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
Я собрал в одну страницу то, что обычно объясняют часами: как реально устроен гражданский процесс в England & Wales по CPR.
Не «где-то там суд», а понятная дорожная карта: от pre-action писем до disclosure, interim applications, trial и момента, когда ты наконец пытаешься… получить деньги через enforcement.
Самый частый провал в спорах не в праве, а в процедуре: пропустили срок, неверно served, не дожали через interim, не подготовили документы, не подумали про исполнение решения. И всё, сильная позиция превращается в больной кейс.
Сохраняйте себе как мини-шпаргалку. Если надо, сделаю вторую страницу: ключевые сроки (14/28 дней, service rules, relief from sanctions) и где чаще всего «умирают» иски.
P.S. Процедура в Англии это не бюрократия. Это рычаг.
#EnglishLaw#Litigation#CivilProcedure#CPR#LegalStrategy#DisputeResolution#LawNotes#AybekThinkTank
🔥Юристы и ChatGPT: не “игрушка”, а инструмент мышления
За последние месяцы ко мне всё чаще приходят коллеги — юристы, аналитики, консультанты:
«Айбек, я вижу, ты работаешь с ChatGPT.
Но я вообще не понимаю — зачем это? Как это помогает в юриспруденции? И реально ли на этом зарабатывать?»
Отвечаю.
ChatGPT — это не про “сгенерировать текст”.
Это про структурировать мышление.
Когда у юриста в голове каша из идей: позиция по делу, структура иска, стратегия защиты — ChatGPT превращает этот хаос в систему.
Он помогает выстроить аргументы, увидеть слабые места, отделить логику от эмоций.
🎯 ChatGPT полезен именно там, где юрист обычно тратит часы:
- разложить по полочкам мысли по делу,
- превратить черновик в чёткий документ,
- сформулировать стратегию,
и упростить сложное, не теряя сути.
Я показываю юристам, как использовать ChatGPT не как помощника, а как соавтора мышления.
Как сделать так, чтобы нейросеть усиливала профессиональную интуицию, а не заменяла её.
Сейчас я готовлю серию постов и практических промтов — конкретные приёмы, как ChatGPT может:
- ускорить анализ кейсов и судебных позиций,
- помочь готовить отчёты, статьи, аргументы,
и как на этом реально можно зарабатывать.
Если вам интересно понять, как ChatGPT можно встроить в юридическую работу и монетизировать знания, — подпишитесь.
Будет системно, с примерами, и по-взрослому.
💬 Напишите в комментариях, какие темы вам интересны:
структурирование мыслей, подготовка позиций, анализ кейсов, юридический контент или что-то другое.
#ChatGPTдляюристов#LegalAI#ЮридическоеМышление#LegalStrategy#LawAndAI#LegalThinking#ЮристБудущего#LegalDesign#AybekThinkTank#AIвЮриспруденции#LegalWriting#НейросетиДляЮристов