我有一個解析文本問題到數組preg_match_all - 解析簡單的代碼
我的正則表達式:
/\s*DEF\s+FUNC\s+(\w+\d*)\((\w*[.\s\w]*|)\)\s*{\s*(.*)\s*}/s
我的文字:
DEF FUNC test(param)
{
test1;
};
DEF FUNC testSecond()
{
test1
test1
};
它應該返回數組一樣:
(
[0] => DEF FUNC test(param)
{
test1;
};
[1] => DEF FUNC testSecond()
{
test1
test1
};
)
但現在我只有一個元素:
(
[0] => DEF FUNC test(param)
{
test1;
};
DEF FUNC testSecond()
{
test1
test1
};
)
我該如何解決這個問題?
你需要爲此實現一個*真正的解析器*。 – zerkms
它的小事情很簡單。我不會創建新的語言;) – mtoy
正則表達式不計數,因此您無法在任意數量的匹配之前放置遞增數字。 – CAustin