Utilo

Визуализатор регулярных выражений

Визуализируйте регулярные выражения в виде railroad-диаграмм, читайте понятное объяснение каждого элемента, проверяйте совпадения и копируйте код для JavaScript, Python, Go, Java, C#, PHP и Rust.

Что делает этот визуализатор реджекса

Регулярные выражения для большинства людей просто для записи: легко набирать, трудно читать через неделю. Этот инструмент анализирует ваш шаблон в синтаксическое дерево и показывает его тремя способами. Диаграмма железной дороги рисует схему в виде пути, которым можно следовать слева направо, с ветвями для чередования, петлями для повторения и помеченными ящиками для групп. Объяснение на простом языке проходит через каждый токен ("одна или несколько цифр", "названный год группы", "не сопровождается"). И сниппеты кода показывают, как использовать точный шаблон с правильным уходом в JavaScript, Python, Go, Java, C#, PHP и Rust. Тестирующая строка показывает совпадения, когда вы печатаете.

Как пользоваться

  1. Введите или вставьте шаблон. Вы можете включить слайсы и флаги, как /^\d{4}-\d{2}$/gm или ввести флаги отдельно.
  2. Следуйте схеме железной дороги, чтобы увидеть общую форму узора.
  3. Прочитайте список объяснений для описания токен-по-токену.
  4. Введите тестовую строку, чтобы увидеть, что совпадает и какие группы захватывают что.
  5. Копируйте готовый фрагмент на своем языке.

Читать схему железной дороги

  • Закругленные ящики - это буквальный текст; квадратные ящики - это классы символов, такие как цифр или один из az.
  • Путь, разделяющийся на параллельные рельсы, является чередованием (a|b).
  • Рельс, который закручивается под коробкой, означает "повторить"; рельс, который обходит коробку, означает "необязательно".
  • Детальные кадры - это группы; группы захвата пронумерованы, а названные группы показывают свое имя.
  • Окружающие кадры рисуются как маркированные кадры, потому что они проверяют текст, не потребляя его.

Советы

  • Предпочтительнее \d и классы символов, чем длинные чередования для скорости и ясности.
  • Ленивые количественные показатели (*?, +?) показаны с "как можно меньшим количеством" в объяснении.
  • При переносе шаблонов помните, что движок RE2 Go не поддерживает обходные или обратные ссылки; фрагмент Go предупреждает вас, когда ваш шаблон использует их.
  • Избегайте обратных слайшей в обычных литералах строки или используйте сырые строки (r"..." в Python, backticks в Go), как это делают фрагменты.

Частые вопросы

Какой аромат реджекса используется?

Парсер и сопоставляющий используют синтаксис JavaScript (ECMAScript 2024), включая названные группы, lookbehind и Unicode свойства сбегают с флагом u.

Чем это отличается от тестера Regex?

Тестер Regex фокусируется на сопоставлении и замене текста. Визуализатор фокусируется на понимании и документировании шаблона.

Могу я сохранить схему?

Диаграмма представляет собой SVG; нажмите правой кнопкой мыши для сохранения или копирования изображения.

Мой шаблон или текст покидает браузер?

Нет, нет, нет. Анализ, чертеж и совпадение происходят локально.

Да. Вся обработка происходит прямо в вашем браузере с помощью JavaScript, Web Workers и веб-API. Ничего из того, что вы вводите, вставляете или загружаете, не отправляется на наши серверы.

Эта страница переведена с английского автоматически. Если вы заметили ошибку, сообщите нам.