|
|
|
Supreme Being
      
участник
Last Login: 01.10.2007 19:44
Сообщ.: 477,
Visits: 4 198
|
|
Есть
$str="текст-
код пхп со всеми сопутствующими симоволами
?>
-текст";
нужно с помощью
$res=ereg_replace($pattern,"\\0"(или еще как), $str);
получить в $res строку: "текст--текст" то есть удалить все что внутри ?> и их самих.
Какой должен быть $pattern ?
------------------------------
Мое почтение к уважаемому собранию!
|
|
|
|
|
Supreme Being
модератор
Last Login: 04.05.2008 13:32
Сообщ.: 7 240,
Visits: 65 445
|
|
| Не проще ли использовать strip_tags?
|
|
|
|
|
Supreme Being
      
участник
Last Login: 01.10.2007 19:44
Сообщ.: 477,
Visits: 4 198
|
|
Мысль следующая - есть некий текст, внутри него встречаются блоки, помеченные тегами - скажем [comment] ...... [/comment]
Таких блоков может быть несколько.
Пусть все это - $text.
Как сделать есно ereg_replace("...","..", $text);
чтобы напечаталось без этих комментов?
Сложность в том, что внутри находится именно код, и перечислять все варианты печатных и прочих символов в шаблоне трудно, а .* съедает все промежуточные комменты.
------------------------------
Мое почтение к уважаемому собранию!
|
|
|
|
|
Supreme Being
модератор
Last Login: 04.05.2008 13:32
Сообщ.: 7 240,
Visits: 65 445
|
|
|
|
|
|
Supreme Being
      
участник
Last Login: 01.10.2007 19:44
Сообщ.: 477,
Visits: 4 198
|
|
В яве именно оно и работает.
Это называется что-то вроде "средней агрессивности" :)
Тут не хочет.
------------------------------
Мое почтение к уважаемому собранию!
|
|
|
|
|
Supreme Being
модератор
Last Login: 04.05.2008 13:32
Сообщ.: 7 240,
Visits: 65 445
|
|
| Если быть точным, то это называется нежадное (ungreedy) выражение. Раз не работает с ereg_replace, то стоит попробовать preg_replace, как рекомендуется в документации.
|
|
|
|