FFenceLilt
Сценарии

Сценарии работы с кодом · Ограниченное извлечение блоков с обратными кавычками

03
Вокруг ваших задач

Конкретная отправная точка

Извлеките блоки с тройными обратными кавычками в начале строки из текста до 4096 символов с необязательной ASCII-меткой языка. Проверьте пустые блоки и нормализацию переводов строк, отклоните незакрытый блок и не интерпретируйте другие формы Markdown, не выполняя код.

01

Откройте контекст

Выберите папку проекта и обозначьте нужные файлы или поведение.

02

Опишите изменение

Укажите входные данные, ожидаемый результат и границы, которые нужно сохранить.

03

Изучите работу

Проверьте предлагаемые изменения и команды, прежде чем полагаться на результат.

04

Проверьте результат

Сравните фактическое поведение с ожидаемым. Если проверка не проходит, разберитесь в причине перед следующими изменениями.

Ограниченное извлечение блоков с обратными кавычками

Конкретная отправная точка
import re

def fenced_blocks(text):
    if type(text) is not str or len(text) > 4096:
        raise ValueError("fence.input")
    blocks, body, language = [], None, None
    for line in text.splitlines():
        if body is None:
            opening = re.fullmatch(r"```([A-Za-z0-9_-]*)", line)
            if opening:
                body, language = [], opening[1]
        elif line == "```":
            blocks.append((language, "\n".join(body)))
            body = None
        else:
            body.append(line)
    if body is not None:
        raise ValueError("fence.unclosed")
    return blocks

Пример — отправная точка для реального проекта, а не утверждение, что сгенерированный код уже протестирован. Адаптируйте пути, зависимости и ожидаемое поведение к своему приложению.

Рабочая среда с ИИ для кода

Здесь начинается ваше следующее изменение.

Скачать для Windows ↗