многострочный поиск в регулярных выражениях
text = text.replace(/<\/div>\r(<\/div>)^/img ,"2");
не пойму как заставить это работать , т.е. нужно в тексте отловить два подряд закрывающихся дива , второй с новой строки , к сожалению не нашел примеров по многострочному поиску в регулярных выражениях , может кто подскажет ?... "Наконец, опция многострочного поиска позволяет проводить сопоставление с образцом строкового выражения, состоящего из нескольких строк текста, соединенных символами разрыва строки. По умолчанию, сопоставление с образцом прекращается, если найден символ разрыва строки. Данная опция преодолевает указанное ограничение и обеспечивает поиск образца по всей исходной строке. Она также влияет на интерпретацию некоторых специальных символов в регулярных выражениях, а именно: Обычно символ ^ сопоставляется только с первым элементом строки. Если же опция многострочного поиска включена, то он также сопоставляется с любым элементом строки, которому предшествует символ разрыва строки. " |
\n забыли.
|
если можно то хотелось бы рабочий вариант , \n \r , все местами менял , добавля ^ & в различных вариантах , не работает...
|
А зачем у вас ^ в конце?
|
я обрисовал конструкцию как себе это более менее представляю
пробывал все из нижеперечисленного , не срабатывает text = text.replace(/<\/div>$\n^<\/div>/img ,"2"); text = text.replace(/(<\/div>)$\n^(<\/div>)/img ,"2"); text = text.replace(/<\/div>\n<\/div>/img ,"2"); text = text.replace(/>$/n^</img ,"2"); |
Я не могу понять, зачем вам /m вообще нужен. И без него всё будет работать, только ^ убрать.
|
У вас везде новая строка обозначается то \n, то \r, хотя должна быть \r?\n
|
Цитата:
|
может так?
<form name="f" action="http://"> <textarea name="t" ></div> </div></textarea><textarea name="t2" ></textarea></form> <script language="JavaScript" type="text/javascript"> /*<![CDATA[*/ text= document.forms.f.t.value; text = text.replace(/(<\/div>\s*?<\/div>)/img ,"2"); document.forms.f.t2.value=text; /*]]>*/ </script> |
|
Часовой пояс GMT +3, время: 00:36. |