2010-04-11 195 views
0

有了這個功能:不能得到正則表達式來工作,因爲我想

function bbcode_parse($str) { 
$str = htmlentities($str); 

$find = array( 
    '/\\*\*(.[^*]*)\*\*/is', 
); 

$replace = array(
    '<b>' 
); 

$str = preg_replace($find, $replace, $str); 

return $str; 
} 

,並用文本「My name is **bob**

我拿到源代碼Hi my name is <b>

一直試圖讓這個爲工作現在一會兒。

會appricate一些專家的幫助:)

+0

也許是一個更好的標題下一次 – 2010-04-11 08:43:58

+0

也想不出更好的一個,建議一個更好的,我改變:) – Jorm 2010-04-11 08:47:23

+0

只是說明你正在嘗試比「得到一個正則表達式的工作」更加詳細地做。一個好的經驗法則是,如果有人遇到同樣的問題,Google會找到你的Q/A,那該怎麼辦? – 2010-04-11 08:50:58

回答

2

(在設置高亮您[b]xxx[/b]**xxx**加粗文本。)

在PHP中,你可以使用$1代表捕獲子組,所以你的更換應該是

'<b>$1</b>' 
+0

好的,我必須重命名我的功能:)謝謝 – Jorm 2010-04-11 08:28:37

0

嘗試使用這樣的:

preg_replace("/.*\*{2}(.+?)\*{2}.*/", "<b>$1</b>", "My name is **bob**");