Рекурсивное регулярное выражение - PullRequest
0 голосов
/ 17 апреля 2019

Если есть текст типа ${placeholder1.${placeholder2}}, возможно ли иметь регулярное выражение для рекурсивного соответствия тексту, например ${placeholder1.${placeholder2}} ${placeholder2}

1 Ответ

2 голосов
/ 17 апреля 2019

Нет, не используется стандартное регулярное выражение. Вот почему настоятельно рекомендуется не использовать регулярные выражения для разбора HTML. Perl, PCRE и Ruby поддерживают расширенную форму, которая будет инструктировать регулярное выражение возвращаться к началу шаблона и переоценивать совпадение. Подробнее см. Рекурсия регулярного выражения .

В общем случае я бы написал быстрый синтаксический анализатор для обработки этого варианта использования, используя такую ​​библиотеку, как PegJS .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...