我有一个完整的HTML页面加载到一个字符串中,我需要根据以下内容修改所有form
。
原始HTML:
<form Random=Random>orignal inputs</form>
所需的HTML:
<form Method='POST' action="index.php">orignal inputs</form>
答案 0 :(得分:1)
对于此类任务,您可以尝试Symfony框架的Crawler component。 它可以帮助您导航DOM并设置节点的属性。
正确的方法是使用dedicated classes provided by PHP管理DOM树。
Crawler组件是一个可以促进操作的辅助库。
答案 1 :(得分:0)
正则表达式:
<form .*?>(.*?)</form>
替换字符串:
<form Method='POST' action="index.php">\1</form>
说明:
第一个.*?
匹配任何字符的零个或多个(新行除外),但只有达到'&gt;'所需的最小值
(.*?)
再次匹配任何字符的零个或多个(新行除外),但只需要到达<
所需的数量,并创建一个可以“反向引用”的正则表达式组({ {3}})替换字符串。
在替换字符串中,\1
是引用 - 在此示例中 - 指向“原始输入”的反向引用。