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

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

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

 

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

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: [/check] text [check] поменять чеки местами

Сообщения:  [1-4] 

 
 автор: SHAman   (14.01.2011 в 11:20)   письмо автору
 
   для: Trianon   (14.01.2011 в 10:14)
 

Долго медитировал на эти смайлики:)
Вероятно, есть. Либо нарушена структура как таковая.

  Ответить  
 
 автор: Trianon   (14.01.2011 в 10:14)   письмо автору
 
   для: SHAman   (14.01.2011 в 10:08)
 

) :-) :-( :-(

как, по Вашему, есть тут вложенная структура?

  Ответить  
 
 автор: SHAman   (14.01.2011 в 10:08)   письмо автору
 
   для: bnf   (13.01.2011 в 23:26)
 

Одной регуляркой вложенные структуры парсить крайне сложно. Я бы думал в сторону рекурсивного парсинга. То есть написал бы функцию, принимающую текст и находящую в нем нужные блоки. Каждый из блоков она бы отдавала себе же и делала то же самое. Функция должна возвращать уже измененный текст (если было что менять), либо неизменный, если менять нечего. Как-то так.

Ну и если предполагается делать это часто и постоянно, то подумать над кэшированием или другой оптимизацией.

  Ответить  
 
 автор: bnf   (13.01.2011 в 23:26)   письмо автору
 
 

требуется написать регулярку, которая бы делала revers check тегов, так чтобы вместо [/check] text [check] стало [check] text [/check] .
Только трабл в том, что строка в которой производится замена может выглядель так: [/check] text text [/check] text [check] text text [check].
Никак не могу решить данную задачу, натолкните на мысль. Возможно ли это сделать одной регуляркой или как-то надо с if else крутить, или циклами?

  Ответить  

Сообщения:  [1-4] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

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