2010-03-27 53 views
0

我通常不使用正則表達式,因此我的問題。我需要一個正則表達式匹配以下:幫助PHP正則表達式

'{any-string}'. 

任何援助表示讚賞。

+2

這可能是一個好主意,閱讀有關正則表達式的教程,讓你真正瞭解他們,不只是複製和粘貼評分最高的答案。一點知識是一件非常危險的事情。解析字符串可能非常棘手,需要注意很多邊緣情況。 – 2010-03-27 20:00:22

+0

引號應該是匹配的一部分,還是隻是將它們添加爲「清晰」? – 2010-03-27 20:02:27

+0

match {any-string}然後...? – user187291 2010-03-27 20:03:11

回答

1

最簡單的表達應該是:

/{(.*?)}/ 

如果您希望更復雜的字符串(例如,某種轉義序列,其中{}字符允許的字符串中),也可能是更復雜。例如,對於一個\(反斜槓)轉義序列:

/{((?:\\.|[^}])*)}/ 

編輯:這是沒有測試過,但總的想法是,表達會吞噬任何字符後逃逸,而不是確保它不是閉括號。

0

要更換{ }什麼file_get_contents回報什麼,你可以這樣做:

$page = file_get_contents('some_file_name or some_url'); 
$str = '.....{...}....'; 
$str = preg_replace('/{[^}]*}/',"$page",$str);