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

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

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

 

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

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

тема: выборка текста между двумя разделителями [text] и [/text]
 
 автор: t4f   (14.02.2007 в 12:20)   письмо автору
 
 

Привет! Вот есть текст

текст какой-то
[text]
любой текст неопределенной длины
[/text]
тоже текст

Помогите составить регулярное выражение, позволяющее выбрать текст, который находится между [text] и [/text]

   
 
 автор: cheops   (14.02.2007 в 12:31)   письмо автору
 
   для: t4f   (14.02.2007 в 12:20)
 

Можно воспользоваться следующим решением
<?php
  $text 
'текст какой-то 
[text] 
любой текст неопределенной длины 
[/text] 
тоже текст'
;
  
$pattern "|\[text\](.*?)\[/text\]|is";
  
preg_match($pattern$text$out);
  echo 
$out[1];
?>

   
 
 автор: t4f   (14.02.2007 в 12:34)   письмо автору
 
   для: cheops   (14.02.2007 в 12:31)
 

Спасибо.
Еще вопрос - можно ли сделать такой же выбор необходимого текста без пременения регулярных выражений?

   
 
 автор: Loki   (14.02.2007 в 12:41)   письмо автору
 
   для: cheops   (14.02.2007 в 12:31)
 

Это решение будет некорректно работать в случае вложенных тегов.

   
 
 автор: t4f   (14.02.2007 в 12:47)   письмо автору
 
   для: Loki   (14.02.2007 в 12:41)
 

А какое будет корректно работать?

   
 
 автор: Loki   (14.02.2007 в 13:00)   письмо автору
 
   для: t4f   (14.02.2007 в 12:47)
 

\[text\]((?!\[text\]).)*?\[\/text\]

   
 
 автор: t4f   (14.02.2007 в 13:06)   письмо автору
 
   для: Loki   (14.02.2007 в 13:00)
 

Спасибо!

   
Rambler's Top100
вверх

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