мне нужноNEGATE и повторить атомную группу в JavaScript регулярное выражение
- матча
{{
- группа начала захвата
- ничего то не
}}
- конец захвата
- матч
}}
образца:
dummy text
{{ text to be matched }}
more dummy text dummy
dummy {{ foo { bar }} dummy text
dummy text
{{}}}
Результат:
матч 1:
{{ text to be matched }}
группа 0:
text to be matched
матч 2:
{{ foo { bar }}
группа 0:
foo { bar
матч 3:
{{}}}
группа 0:
}
Проблема у меня есть not }}
часть, поскольку Javascript не имеет атомных групп.
Я не могу отрицать, не захватывая группы и повторить его, как этот
{{ match {{
( capture
^(?:}})+ not "}}" 1+ times
) end capture
}} match }}
это /{{(.+)}}/
своего рода работает, но только если у меня нет разрывов строк.
вот почему я не могу просто совместить '{{' anything then '}}'. Это должно быть '{{' ничего, кроме}}, затем '}}' –
Вы пытаетесь сопоставить что-либо между '{{' и '}}'? –
Если '/\{\{(.+)}}/' работает, но не с разрывами строк, можете ли вы просто добавить флаг 'm', например' /\{\{(.+)}}/m'? – Jacob