Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум Регулярные Выражения

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Подсветка Pascal-кода на странице - тэги [pas][/pas]
 
 автор: Wyfinger   (11.03.2007 в 07:07)   письмо автору
 
 

Добрый день, прошу помощи.

Работаю c PHP.
Есть текст, в нем какие-то участки выделены тегами [PAS] и [/PAS], как Вы поняли, это код на Паскале. И есть функция выделения кода Паскаля. Нужно как-то выделить то, что находится между этими тегами, обработать их функцией выделения и вставить обратно.

Получается что-то вроде:
$text = ereg_replace('\[PAS\](.*)\[/PAS\]', DrawCodePas('@$1'), $text);

(естественно, это выражение не работает)

Как это можно сделать?

   
 
 автор: cheops   (11.03.2007 в 14:41)   письмо автору
 
   для: Wyfinger   (11.03.2007 в 07:07)
 

Вместо ereg-функций, которые будут исключены в PHP 6 из ядра и даже основных расширений, лучше использовать preg-функции, в состав которых входит функция preg_replace_callback(), позволяющая использовать в качестве замены функцию обратного вызова.

   
 
 автор: Wyfinger   (12.03.2007 в 08:39)   письмо автору
 
   для: cheops   (11.03.2007 в 14:41)
 

Скажите, какую маску мне использовать?

|\[PAS\](.*)\[/PAS\]|


не действует, если в коде присутствует перевод строки.

   
 
 автор: Poison   (12.03.2007 в 08:59)   письмо автору
 
   для: Wyfinger   (11.03.2007 в 07:07)
 

<?
$text 
preg_replace("/\[PAS\](.+?)\[\/PAS\]/sie""DrawCodePas(\"\\1\")"$text);
?>

   
 
 автор: Wyfinger   (16.03.2007 в 05:10)   письмо автору
 
   для: Poison   (12.03.2007 в 08:59)
 

Спасибо, просто мало знаком с Perl-Style RegExpr. Не знал о ключе /s.

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования