2015-09-23 7 views
-1

моего образец текст:Javascript заменить со ссылкой на согласованную группу на все матчи

'<div class="emoji-icons emoji-smile" e-type="smile" style="display:inline-block;" contenteditable="false"></div> is <div class="emoji-icons emoji-grinning" e-type="grinning" style="display:inline-block;" contenteditable="false"></div> very time.' 

заменить команду:

text.replace(/<div class="emoji-icons (?:.*)" e-type="([a-z]*)"[^>]+><\/div>/ig, '$1') 

я хочу заменить все DIV тег со значением атрибута е-типа. Результат должен быть «улыбка усмехается, меняйте время».

но это регулярное выражение не работает со всеми согласованными и работает над последними совпадениями.

Любые идеи или предложения?

+6

* «Любые идеи или предложения?» * Да. [** Не используйте регулярные выражения для управления HTML. **] (http://stackoverflow.com/a/1732454/157247) –

ответ

1

Вам нужно заменить (?:.*)" с (?:.*?)", также нет необходимости в () так просто использовать .*?"

var text = '<div class="emoji-icons emoji-smile" e-type="smile" style="display:inline-block;" contenteditable="false"></div> is <div class="emoji-icons emoji-grinning" e-type="grinning" style="display:inline-block;" contenteditable="false"></div> very time.'; 
 

 
text = text.replace(/<div class="emoji-icons.*?" e-type="([a-z]*)"[^>]+><\/div>/ig, '$1') 
 

 
document.write(text);

. *?: Между нулевым и неограниченным временным интервалом, в кратчайшие сроки

+0

спасибо, отлично работайте. – mrlayeghi

+0

@mrlayeghi: рад помочь –

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