Регулярное выражение для JSON-строки

Шаблон для JSON-строки с поддержкой экранирования спецсимволов и юникода.

ПресетСтраница примера инструмента

Регулярное выражение для JSON-строки — поля заполнены примером, их можно менять. Настройки уедут в ссылку «Поделиться», а заголовок страницы и вкладки описывают исходный пресет, а не текущие поля.

Вернуться к обычному виду инструмента: Регулярные выражения

Об этом примере

JSON-строка заключается в двойные кавычки и может содержать экранированные спецсимволы: обратный слэш, кавычку, перевод строки и unicode \uXXXX. Шаблон требует открывающую и закрывающую кавычки и разрешает только корректные экранирования внутри. Тест «строка в кавычках» — простой пример. Незакрытая кавычка или необработанный слэш отвергаются. Выражение не разбирает вложенные объекты. Используйте пресет для проверки отдельных строковых значений при валидации JSON-документов.

Флаги пишутся подряд, без запятой и без пробелов. Поддерживаются g (все совпадения), i (без учёта регистра), m (^ и $ в каждой строке), s (. включает перевод строки), u (режим Unicode), y (поиск с позиции lastIndex), v (наборы Unicode вместо одиночных классов) и d (индексы начала совпадений). Порядок не важен: «giu» и «ug» — одно и то же.

Объяснение

Начало строки затем '"' затем одно из: любой символ кроме '"', '\', от '' до '' или '\' затем одно из: один из '"', '\', '/', 'b', 'f', 'n', 'r', 't' или 'u' затем один из от '0' до '9', от 'a' до 'f', от 'A' до 'F' (ровно 4 раз) (ноль или более раз) затем '"' затем конец строки

Диаграмма выражения

Railroad — структура AST: терминалы, ветки и петли. NFA — переходы между состояниями автомата, ε-переходы отмечены пунктиром.

^"*группа (?:)[^…]\группа (?:)["\/b]u{4}[…]"$

Подсветка токенов

Цвет показывает роль фрагмента: литерал, класс, квантор, группа и т.д.

Live-тест

Готовые регулярки

Каталог регулярок →

Найдено: 66 из 66