2013-10-13 30 views
0

我有以下可能的字符串即使有空格或回車符也可以匹配BBCode標記的模式?

實施例A

[attach]123[/attach] 
[attach]456[/attach] 
[attach]789[/attach] 

實施例B

[attach]123[/attach] 

[attach]456[/attach] 

[attach]789[/attach] 

例C

<space> 
<carriage return> 
[attach]123[/attach] 
[attach]456[/attach] 
[attach]789[/attach] 

我需要一個匹配附加代碼內部字符的正則表達式模式,但是示例之間的差異與每個附加代碼周圍的間距有關,請問regex是否忽略了所有的間距和回車差異?任何人都可以幫助建立一個preg_match?

謝謝!

+0

你能不能把你的企圖問題在你的問題?另外,你可以嵌套標籤嗎?像'[attach] [b] 123 [/ b] [/ attach]'? – Jerry

+0

@jerry這是我到目前爲止所嘗試的,但它只匹配第一行\ [attach](。+?)\ [\/attach] – Mark

+0

您可以編輯您的問題並將代碼放在您使用的位置嗎?這可能就是你提取結果的方式。 'preg_match_all'應該得到你要找的所有不同的號碼。 – Jerry

回答

0

正則表達式應該是工作,儘管你能避免逸出使用不同的分隔符,如~

preg_match_all('~\[attach\](.+?)\[/attach\]~i', $text, $matches); 

viper-7 demo

相關問題