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

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

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

 

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

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

тема: вырезать [x]...{x}...[/x ]
 
 автор: _Efim_   (24.06.2009 в 02:17)   письмо автору
 
 

Помогите пожалуйста вырезать из текста вида
 Отсюда видно, [YOUCANSEE]что {YOUCANSEE} требует перейти к поступательно 
перемещающейся системе координат, [ProceSS1]чем и характеризуется {ProceSS1}устойчивый 
гироскопический прибор[/ProceSS1], как и видно из системы диффренциальных уравнений. 
Проекция угловых скоростей переворачивает колебательный крен, [/YOUCANSEE]рассматривая 
уравнения движения тела в проекции на касательную к его траектории.


все теги вида [TAG]...{TAG}...[/TAG]

1. Только теги, между которыми есть в середине такой-же тег в фигурных скобочках {}
2. Текст много-строчный, но теги [a-Z0-9_]
3. Теги регистро-зависимые. Тоесть [A]..{a} [/a] вырезать не должно

Подскажите пожалуйста =)

  Ответить  
 
 автор: _Efim_   (24.06.2009 в 16:29)   письмо автору
 
   для: _Efim_   (24.06.2009 в 02:17)
 

Никак ?

  Ответить  
 
 автор: _Efim_   (24.06.2009 в 22:40)   письмо автору
 
   для: _Efim_   (24.06.2009 в 16:29)
 

#\[([A-Z0-9_]+)\](?s).*?{\\1}.*?\[\/\\1\]#

  Ответить  
 
 автор: AcidTrash   (25.06.2009 в 15:30)   письмо автору
 
   для: _Efim_   (24.06.2009 в 22:40)
 

Примерно как-то так
<?php
$text
="Отсюда видно, [YOUCANSEE]что {YOUCANSEE} требует перейти к поступательно
перемещающейся системе координат, [ProceSS1]чем и чем и характеризуется устойчивый
гироскопический приборхарактеризуется {ProceSS1}устойчивый
гироскопический прибор[/ProceSS1], как и видно из системы диффренциальных уравнений.
Проекция угловых скоростей переворачивает колебательный крен, [/YOUCANSEE]рассматривая
уравнения движения тела в проекции на касательную к его траектории."
;
function 
replace($text){
global 
$text;
$text preg_replace("#\[([a-zA-Z0-9_]+)\](.*){\\1}(.*)\[/\\1\]#s","$2$3",$text);
return 
$text;
}
preg_replace_callback("#\[([a-zA-Z0-9_]+)\](.*){\\1}(.*)\[/\\1\]#s","replace",$text);
print 
replace($text);
?>

  Ответить  
Rambler's Top100
вверх

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