Модераторы: Aliance, skyboy, MoLeX, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Регулярка 
:(
    Опции темы
studentigor
Дата 28.3.2011, 14:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 397
Регистрация: 14.11.2008

Репутация: нет
Всего: нет



Всем привет!
Вобщем я формерую документ rtf по шаблону. Там где мне нужно выводить определенные значения яя использую обычный реплейс,
Но вот возникла маленькая проблемка.
В документа есть части текста, от нескольких слов до страницы, которые нужны в документе при определенных условиях.
Ну к примеру при выборе одного метода, в документе остается описание этого метода, если был выбран другой - значит остается описание только другого метода.
Можно было бы сделать вывод конкретной части текста из РНР - но это чуток не подходит, потому что должна быть возможность отредактировать тот или иной кусок текста не открывая РНР файл, а просто открыв шаблон.
И таких кусков много
Было решено сделать по такой схемке.
Код

<tekst11>Текст1<tekst11>
<tekst12>Текст1<tekst12>

Только вот помогите мне с регулярочкой. В зависимости от результата проверки мне нужно будет в одном куске вырезать только <tekst11>, а во втором <tekst12>Текст1<tekst12>. Ну первое я сделаю а вот как мне вырезать все это<tekst12>Текст1<tekst12>
Код

preg_replace("/\(<text12>.*?</text12>\)/u", '', $file);

так не катит. Подскажите, ато я их вобще не понимаю эти регулярки.
PM MAIL   Вверх
patap
Дата 28.3.2011, 15:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 893
Регистрация: 7.5.2005
Где: Украина, Зп

Репутация: 5
Всего: 40



зачем скобки заэкранировал?

так попробуй
Код

preg_replace("/(<text12>.*?</text12>)/us", '', $file);



--------------------
На боку кобура болталась, сзади шашка отцовская звякала. 
Впереди меня все хохотало, а позади все плакало (с)
PM MAIL ICQ   Вверх
studentigor
Дата 28.3.2011, 15:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 397
Регистрация: 14.11.2008

Репутация: нет
Всего: нет



пишет 
Код

preg_replace() [function.preg-replace]: Unknown modifier 't' in
 в той строке

PM MAIL   Вверх
patap
Дата 28.3.2011, 15:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 893
Регистрация: 7.5.2005
Где: Украина, Зп

Репутация: 5
Всего: 40



а ну да,
Код

preg_replace("#(<text12>.*?</text12>)#us", '', $file);



--------------------
На боку кобура болталась, сзади шашка отцовская звякала. 
Впереди меня все хохотало, а позади все плакало (с)
PM MAIL ICQ   Вверх
studentigor
Дата 29.3.2011, 10:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 397
Регистрация: 14.11.2008

Репутация: нет
Всего: нет



извените что ввел в заблуждение. вот эта структура <text11> чето не заменяется
А как сделать тоже самое но с #noPreviousDamage...#nooPreviousDamage
PM MAIL   Вверх
patap
Дата 31.3.2011, 09:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 893
Регистрация: 7.5.2005
Где: Украина, Зп

Репутация: 5
Всего: 40



эм...ну типа этого что-то нужно?
Код

$condition = 2;

switch ($condition)
  {
    case 1: $tag_open = '<text11>'; $tag_close = '</text11>'; break;
    case 2: $tag_open = '<text12>'; $tag_close = '</text12>'; break;
    case 3: $tag_open = '\#noPreviousDamage'; $tag_close = '\#nooPreviousDamage'; break;
  }
  
  $pattern = '#'.$tag_open.'(.*?)'.$tag_close.'#us';
  
  echo preg_replace($pattern, '', $file);



--------------------
На боку кобура болталась, сзади шашка отцовская звякала. 
Впереди меня все хохотало, а позади все плакало (с)
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Тексты | Следующая тема »


 




[ Время генерации скрипта: 0.0520 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.