0
我有,例如,下面的字符串:PHP preg_match_all:提取逗號分隔的列表
{WIDGET_TEST('abc','456')}
我希望能夠使用preg_match_all返回的逗號分隔的參數數組。
任何人都可以用我需要的正則表達式來幫助我嗎?
我試過和下面的查詢返回(a,b)
:
preg_match_all('/\([a-zA-Z0-9\',]+\)/', '{WIDGET_TEST(a,b)}', $arguments);
但我離開戰鬥得到這樣的結果是一個數組,正則表達式休息時,我介紹了單引號?
編輯 使用下列內容:
preg_match_all('/(\'[a-zA-Z0-9,]+\')/', '{WIDGET_TEST('variable1','b')}', $arguments);
我得到:
array
0 =>
array
0 => string ''variable1'' (length=11)
1 => string ''b'' (length=3)
1 =>
array
0 => string ''variable1'' (length=11)
1 => string ''b'' (length=3)
所以請相信我是有一部分的方式...
由於語法的複雜性,這不能在單個正則表達式中可靠地解析,而沒有像單引號內部的未轉義的'''等警告。我會建議修剪幷包括圓括號,然後分別解析參數。 – cmbuckley 2012-04-17 15:49:38
謝謝,我已經更新了我的答案,因爲我取得了進展... – Sjwdavies 2012-04-17 16:03:00