2014-09-02 170 views
1

我需要PHP pcre正則表達式來查找所有大括號的內容... 爲什麼這個正則表達式不起作用?PHP pcre正則表達式來查找大括號的內容

<?php 

    $str = "test{it}test{/it}test"; 
    $ret = preg_match_all("#\{.?\}#u", $str, $matches); 
    print_r($matches); 

?> 

我希望$matches包含{it}{/it} - 但它是空的....

+0

'。?'=> 0或1個隨機字符。你的意思是'。*?'(零個或多個隨機字符,不確定)? – Wrikken 2014-09-02 13:14:31

+0

將正則表達式更改爲'。*?'。 – 2014-09-02 13:14:38

+0

'{。*?}'你不需要轉義'{' – Dalorzo 2014-09-02 13:17:53

回答

1

我認爲這是你正在尋找的版本:前?

$re = "/{.*?}/"; 
$str = "test{it}test{/it}test"; 

preg_match_all($re, $str, $matches); 
* {.*?}
+0

之間ahh是的。你是對的。 – Dannyboy 2014-09-02 13:22:32

相關問題