Помогите составить регулярку

AHgpyxA

Новичок
Помогите составить регулярку

Прошу помощи:
Помогите составить регулярку.
Необходимо получить из строки
Код:
$x = "... ?>text1<? $a=1; ?>text2";
кусок "text2", ориентируясь на "?>" и на конец строки ($)
Пробовал так:
Код:
"#?>(.+?)$#s"
но он возвращает
Код:
"text1<? $a=1; ?>text2"
 

freeek

Новичок
Действительно

на то что ты привел

PHP:
%(?!\?\>)[a-z0-9]+$%i
ответ такой
но только на тот пример, на который ты привел

-~{}~ 28.08.09 00:59:

форум режет экранирующий слешь
поэтому имей ввиду \?\>без пробела
 

AHgpyxA

Новичок
нужно взять всё, что не является PHP-кодом.

мне помогло выражение:
Код:
%.*\?>(.+)$%s
-~{}~ 28.08.09 11:21:

freeek
Код:
(?!\?>)
а вот это выражение непонятно мне.
можешь по-русски рассказать?
типа "любое количество любых символов, после которого НЕ идёт ?>, потом любое количество английских букв и цифр и конец"
 

DiMA

php.spb.ru
Команда форума
> можешь по-русски рассказать?

тебе скопипастить рассказ на русском из документации?
 

AHgpyxA

Новичок
DiMA
нет. я спросил потому, что мне показалось нелогичным его вариант, и не сработал.
вот я и попросил озвучить.

непонятно было почему "после любого количества символов НЕ ДОЛЖНО стоять ?>"

в любом случае, всем спасибо, проблема решена.
 

AHgpyxA

Новичок
у меня как раз так, только более общий вид.
спасибо. тему можно закрыть.

-~{}~ 28.08.09 15:49:

и кажется, ">" экранировать не нужно...
 
Сверху