Автор Тема: регулярное выражение  (Прочитано 3173 раз)

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

Оффлайн DartSidius

  • Фанат форума
  • Старожил
  • ****
  • Сообщений: 309
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
регулярное выражение
« : 11 Июля 2008, 04:17:20 »
в общем есть например текст в ХТМЛ такого формата:

$VAR1;/images/TTL-$VAR2;

Собственно нужно сделать подмену на значение. Но проблема в том, что когда я делаю так: ~s/\\$(.*?)\\;{1,}/$$1/g;, то подмена делается по такой переменной: $VAR1;/images/TTL-$VAR2 целиком. как сделать, чтобы сначала первую подменить, потом вторую?

п.С. кстати если сделать перенос на новую строку перед второй переменной, то всё правильно обрабатывается: $VAR1;/images/TTL-
$VAR2

Оффлайн arto

  • Ветеран
  • *****
  • Сообщений: 699
  • +0/-0
  • 2
    • Просмотр профиля
регулярное выражение
« Ответ #1 : 11 Июля 2008, 09:07:15 »
s#\\$(\\w+)#$$1#ge

Оффлайн DartSidius

  • Фанат форума
  • Старожил
  • ****
  • Сообщений: 309
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
регулярное выражение
« Ответ #2 : 11 Июля 2008, 14:05:05 »
работает!

А если переменную такого типа заменить?

$VAR::ABC;/images/TTL-$VAR2::AAA;

? что-то не получилось . . .

Оффлайн arto

  • Ветеран
  • *****
  • Сообщений: 699
  • +0/-0
  • 2
    • Просмотр профиля
регулярное выражение
« Ответ #3 : 11 Июля 2008, 16:58:07 »
описать ее, как надо.
если верно понял, то \\$(\\w*(?:\\:\\:)?\\w+)

 

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