藍森林首頁 | 返回主頁 | 本站地圖 | 站內搜索 | 聯繫信箱 |
 您目前的位置:首頁 > 自由軟件 > 技術交流 > 應用編程


    

藍森林 http://www.lslnet.com 2006年8月11日 19:58

我在寫ubb的時候遇到一個問題

問題如下:
$body="[font color=red size=4 class=aa]test font ubb[/font]";
我如何用一句語句來替換成:
$body="<font color=red size=4 class=aa>test font ubb</font>";

不是單純替換「<」或">",意思是指把"["替換"<",再把"]"替換成">".

Re: 我在寫ubb的時候遇到一個問題

用個正則表達式,就解決了.
順便問一下,你的ubb是什麼版本的.

Re: 我在寫ubb的時候遇到一個問題

沒什麼版本,我根據需要自己修改了一下來使用。
我知道是用正則表達式,我想問的就是用正則表達式怎麼寫才正確。

Re: 我在寫ubb的時候遇到一個問題

我是說你的修改的基礎是什麼?

Re: 我在寫ubb的時候遇到一個問題

'/<[^<]>/'

Re: 我在寫ubb的時候遇到一個問題

我不是寫論壇,沒有修改的基礎。
只不過需要對輸入的UBB代碼進行解碼而已。

Re: 我在寫ubb的時候遇到一個問題

$newbody = preg_replace("/\[(.+?)\]/", "<$1>", $body);

最好是只針對某些標記進行轉換

Re: 我在寫ubb的時候遇到一個問題

謝謝,UBB的問題我已經基本解決了。
只不過,不能重複套用UBB標籤。
例如:[標1][標1]hhhh[/標1][/標1],再例如換幾行再有結束標籤。好像有點問題,所以我就先替換[標1],再替換[/標1]了。

Re: 我在寫ubb的時候遇到一個問題

對於多行的內容,可以加上在re後面加上m


Re: 我在寫ubb的時候遇到一個問題

好的,我試一下。



Copyright © 1999-2000 LSLNET.COM. All rights reserved. 藍森林網站 版權所有。 E-mail : webmaster@lslnet.com