2
任何人都可以幫我解決這個問題嗎?preg_replace for [list] [*] [/ list]
我使用的BBcode爲我的網站,但在文本編輯器中我發現一個問題:
的UI
[list]
[*]Lorem Ipsum
[/list]
[list=1]
[*]Lorem Ispum
[/list]
我用這腳本:
$filter = preg_replace("#[[]list[]](.*)[[]/list[]]#","<ul>$1</ul>",$filter);
$filter = preg_replace("#[[]list=([^0-9][]](.*)[[]/list[]]#","<ol start=$1>$2</ul>",$filter);
$filter = preg_replace("#[*](.*)#","<li>$1</li>",$filter);
我得到的問題,此腳本 - 它不能使用,因爲腳本found symbol after [list]
,它不能執行下一條語句
preg_replace("#[[]list[]] (.*) [[]/list[]]#","<ul>$1</ul>",$filter);
[list]
[*] Lorem Ipsum --- Stuck In Long Space
[/list]
請在[字符類]讀了(http://www.regular-expressions.info/charclass.html)。還可以使用'#s'修飾符來使'。*'匹配換行符。但也考慮搜索現成的bbcode /無論轉換器,因爲你的編碼嘗試有更多的缺陷。 – mario
您可能還想看看BBCode模塊:http://php.net/manual/en/book.bbcode.php –