Регулярное выражение: игнорировать между скобками и скобками
У меня есть регулярное выражение, которое проверяет, что фраза включена:
var regex = new RegExp( "(\\s|\\b)" + phrases[i] + "(\\s|\\b)", "i" );
var result = regex.test( value );
Что мне нужно сделать, это игнорировать фразу, если она заключена в скобки [] И круглые скобки ().
Я на самом деле использую Markdown для генерации HTML, но я не хочу, чтобы он принимал фразу, если она имеет синтаксис Linkdown или Image markdown.
Пример:
Требуя фразу "тест", он примет:
dfg dfg df [gdf](http://test123.com "test") gdfg df gdfg
Потому что "тест" в названии ссылки.
Если я могу заставить его игнорировать фразу внутри синтаксиса [...](...)
это было бы замечательно.
Если нет, то просто проигнорируйте что-нибудь в скобках или скобках.
1 ответ
Решение
Вы можете разобрать скобки с последующими скобками с этим регулярным выражением.
var string = 'dfg dfg df [gdf](http://test123.com "test") gdfg df gdfg'
string.replace(/\[.*\][(].*[)]/g,'');