Показать сообщение отдельно
  #1 (permalink)  
Старый 14.10.2011, 12:40
Новичок на форуме
Отправить личное сообщение для alexey33 Посмотреть профиль Найти все сообщения от alexey33
 
Регистрация: 14.10.2011
Сообщений: 3

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

задача такая - в тексте есть несколько списков типа
<ul>...</ul>
нужно все их заменить на <div><ul>...</ul></div>
но паттерн /\<ul\>([\s\S]*)\<\/ul\>/gim почему-то не срабатывает, вставляя <div></div> только один раз.

много вариантов перепробывал - не могу понять где недочет в паттерне

текст примера:
<html>
<head>
<script language="JavaScript">
  function changeTxt() {
	var str = document.getElementById('txt').value;
	document.getElementById('txt').value = str.replace(/\<ul\>([\s\S]*)\<\/ul\>/gim, '<div style="padding-left:10px"><ul>$1</ul></div>');
  }
</script>
</head>

<body>

<textarea id="txt" rows="15" cols="50" >
<ul>
<li>one</li>
<li>two</li>
<li>three</li>
</ul>

<ul>
<li>one</li>
<li>two</li>
<li>three</li>
</ul>
</textarea>

<input type='button' value='Run RegExp' onClick="changeTxt();">

</body>
</html>
Ответить с цитированием