Автор Тема: регулярные выражения - жадность  (Прочитано 2880 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Босc всех зон

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 14
  • +0/-0
  • 0
    • Просмотр профиля
Код:


<SCRIPT LANGUAGE="JavaScript1.2">
myRe=/<tr>(.*)<\\/tr>/i;
str "<tr><td>1</td><td>2</td></tr><tr><td>3</td><td>4</td></tr>";
myArray myRe.exec(str);
alert(myArray[1]);
</SCRIPT>


Результат работы массив вида:
  • => "1234"
  • [1] => "1234"

    Но хотелось бы получить массив из 3-х элементов:

  • => "1234"
  • [1] => "12"
    [2] => "34"

    есть ли модификатор "жадности" в js (аналог U в php) ?

Оффлайн alm

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 102
  • +0/-0
  • 0
    • Просмотр профиля
    • http://ispserver.com
регулярные выражения - жадность
« Ответ #1 : 06 Июля 2004, 08:25:56 »
Не знаю как насчет того чтобы получилось, то что вы хотите.
Но модификатор жадности как везде - знак вопроса.

myRe=/(.*?)/i;
Алексей Чекушкин
менеджер проекта  - решения для хостинг компаний. менеджер проекта  - хостинг на Виртуальных Выделенных серверах (VDS / VPS). консультант проекта  - хостинг на Виртуальных Выделенных серверах (VDS / VPS) от 4.9

Оффлайн Босc всех зон

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 14
  • +0/-0
  • 0
    • Просмотр профиля
регулярные выражения - жадность
« Ответ #2 : 06 Июля 2004, 12:22:42 »
alm, cпасибо.

работает такой вариант:



<SCRIPT LANGUAGE="JavaScript1.2">

  
myRe=/<tr>(.*?)<\\\\/tr>/gi;
  
str "<tr><td>1</td><td>2</td></tr><tr><td>3</td><td>4</td></tr>";
  while (
myArray myRe.exec(str)) {
    
alert(myArray[1]);
  }
</SCRIPT>

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28