Автор Тема: regexp, или как разбить выражение через разделитель?  (Прочитано 5333 раз)

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

Оффлайн serg128

  • Завсегдатай
  • Новичок
  • *
  • Сообщений: 31
  • +0/-0
  • 0
    • Просмотр профиля
Народ, задача такая:
есть регулярное выражение:
eregi("((^gw)-(gw..$))|((^msc)-(msc..$))|((^stp)-(stp..$))|((^hlr)-(hlr..$))"$id$Pok)
т.е. входная строка $id у меня имеет вид gw-gwXX или msc-mscXX или stp-stpXX или hlr-hlrXX, где ХХ - любые символы.
Из входной строки мне надо получить массив из 2х элементов: gw и gwXX.
Из описания ф-ции eregi, я вычитал, что последний параметр (масив $Pok) для этого и предназначен. Но на самом деле, в этом массиве куча левой информации появляется. Подскажите, как правильно?

Оффлайн serg128

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

preg_match(\'/^(GW|MSC|STP|HLR)-(\\1..)$/i\', $id, $Pok)

И никаких проблем!

 

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