Regular-Expression
PHP:擷取多行子字元串
我有一個長的多行字元串(它在一個我可以載入到字元串中的文件中),讓我們以此為例:
<response status="success" code="19"> <result total-count="1" count="1"> <deviceconfig> <system> <type> <static/> </type> </system> <setting> </deviceconfig> </result> </response> <response status="success" code="19"> <result total-count="1" count="1"> <network> <interface> <ethernet/> </interface> <profiles> <monitor-profile> <entry name="default"> <interval>3</interval> <action>wait-recover</action> </entry> </monitor-profile> </profiles> </network> </result> </response>
我需要提取它的系統子集並將其放在一個字元串中,其中包含從上面的範例中獲取的以下內容:
<system> <type> <static/> </type> </system>
在我的案例中,原始樣本要大得多,系統內的文本也要大一些
好的,我找到了解決方案:
preg_match_all('/(<system>.*<\/system>)/ms', file_get_contents('./myinputfile'), $xmlinit); $output=$xmlinit[0][0] file_put_contents('./myoutputfile', $output );
歡迎提出改進建議!