2014-10-21 3 views
0

Я попытался скрыть тег кода и его работу, когда я пишу [скрыть] текст [/ hide], но не работает, когда я пишу [hide = "."] Текст [/скрывать]. Вот мой код:preg_replace bbcode с кавычками внутри не работает

#\[hide](.*)\[\/hide\]#siU 

, когда я изменить код для этой линии -

#\[hide=(.*)](.*)\[\/hide\]#siU 

это не работает для меня. может кто-нибудь сказать мне, в чем проблема? Благодарю.

ответ

0

Сделать первые .* не жадным: .*?.

0

Измените первый .* на более конкретное выражение. Если кавычки необходимы в разметке можно написать

#\[hide="([^"]*)"](.*)\[\/hide\]#siU 

или если не

#\[hide=([^\]])*](.*)\[\/hide\]#siU 

Чтобы сделать первый вариант togeher работы с вашей второй, но некоторые скобки вокруг дополнительной части со следующим ?:

#\[hide(="([^"]*)")?](.*)\[\/hide\]#siU 
Смежные вопросы