在php中获取[]和[/" tag"]之间的文本

时间:2013-07-10 17:28:09

标签: php regex preg-match-all

我有下面的脚本:

[h1]tekst in header[/h1]
[page]
    [p]text here[p]
    [table]
        [p]http://sitename.nl/file.php?get=[nickname][/p]
    [/table]
[/page]

现在我想得到这个结果:

Array
        (
            [0] => [h1]
            [1] => tekst in header
            [2] => [/h1]
            [3] => [page]
            [4] => Array (.....)
            [5] => [/page]
        )

我无法弄清楚如何做到这一点。 我已经尝试了几个preg_match_all选项,但我对正则表达式没有经验。

我赞赏你的帮助。

1 个答案:

答案 0 :(得分:0)

出于任何目的使用正则表达式解析XML或HTML标记是最糟糕的想法。

您可以使用XPath轻松获取任何元素的文本。在PHP中,您应该使用DOMXPath class来查询预先加载DOMDocument的文档。 检查此问题以获取适当的XPath查询示例:XPath: select text node