Проектная лаборатория
Собственный Grep
Этап 11 · Основные этапы
Символ подстановки
Русский перевод заданий CodeCrafters. Примеры подготовлены для Go. Выбор языка меняет команды и результаты, но не текст задания.
На этом этапе вы добавите поддержку символа подстановки.
Символ .
Специальный символ . соответствует любому одному символу, кроме перевода строки. Его часто называют символом подстановки, поскольку он занимает место любого символа.
Например:
d.gнаходит совпадение в"dog"(.соответствует"o").d.gнаходит совпадение в"dag"(.соответствует"a").d.gнаходит совпадение в"d9g"(.соответствует"9").d.gне находит совпадения в"cog"(строка не начинается с"d").d.gне находит совпадения в"dg"(.требует ровно одного символа)....находит совпадение в"cat"(три точки соответствуют любым трём символам)..\d.находит совпадение в"a1b"(буква, за которой идут цифра и ещё одна буква).
Проверки
Тестирующая система запустит программу так:
$ echo -n "dog" | ./your_program.sh -E "d.g"Программа должна:
- Завершиться с кодом
0, если входная строка соответствует заданному шаблону. - Завершиться с кодом
1в противном случае.
Проверка в вашей IDE
Нужны Node.js, Git, Go 1.24+ для тестеров и инструменты выбранного языка. Тестеры загружаются и запускаются локально; отдельным проектам нужны дополнительные системные зависимости.
Настройка проекта и IDE
1. Создайте проект один раз
node '/opt/graphlms/tools/project-lab/cli.mjs' init grep ./my-grep --language go2. Откройте папку в IDE
cd ./my-grepРеализуйте требования этапа в созданном проекте.
Запустите из папки проекта
node '/opt/graphlms/tools/project-lab/cli.mjs' submit --stage zb3Запускайте submit из папки проекта. Это локальные проверки, а не сертификаты или результаты аккаунта CodeCrafters.
Результат проверки
go / ЛОКАЛЬНОПодключение к локальной проверке…
Здесь появится результат
Запустите submit в терминале. Страница обновляет результаты каждые 8 секунд.