2016-02-02 2 views
-1
var token = "test123123{parent-area-identifier}<span data-tokenval='{=percent?metricType=1&area={parent-area-identifier}&with=E92000001&period=cal_2012}' class='mceNonEditable'>{=percent?metricType=1&area={parent-area-identifier}&with=E92000001&period=cal_2012}<span class='removetoken' href='javascript:;'>X</span></span>" 

в лексемы строку выше, я хочу заменить "{parent-area-identifier}", но не совпадающей строки внутри <span> тегаЗаменить подстроку не внутри тега HTML

Так что, если я заменить его "ZZZ", вывод должен быть : "test123123 ZZZ<span data-tokenval='{=percent?metricType=1&area={parent-area-identifier}&with=E92000001&period=cal_2012}' class='mceNonEditable'>{=percent?metricType=1&area={parent-area-identifier}&with=E92000001&period=cal_2012}<span class='removetoken' href='javascript:;'>X</span></span>".

+1

Пожалуйста, переформатируйте свой вопрос, чтобы сделать его более читаемым. Трудно понять, в чем проблема. – marsze

+0

отформатировал вопрос и упростил его. –

+0

Когда вы отправляете вопрос, всегда включайте то, что вы пробовали до сих пор. Какое регулярное выражение вы использовали? – marsze

ответ

0
token.replace(/{parent\-area\-identifier}/, "ZZZ") 

Это будет соответствовать первому вхождению {parent-area-identifier} и заменить его на строку «ZZZ». Обратите внимание, что обратные косые черты позволяют избежать символа тире.

+0

Он может иметь несколько {parent-area-identifier} внутри строки, поэтому, когда я использую/g, он заменяет токены внутри тегов '' –

+0

О, так что вы имеете в виду, что ваш токен может иметь несколько' {parent-area- indetifier} 'вне диапазона? –

+0

Да, в этом проблема. Поэтому в основном я ищу регулярное выражение, которое может заменить все эти жетоны, ИСКЛЮЧИТЕ те, что внутри '' tag –

Смежные вопросы