PHP,preg_replace,用tag attr替换tag

PHP,preg_replace,用tag attr替换tag,php,replace,preg-replace,Php,Replace,Preg Replace,我可以详细解释一下如何使用php用当前attr替换为tag吗 我阅读手册和一些参考资料 对于简单的命令,我可以理解,但是对于preg_上的搜索命令,请用~、$1、/n、等字母替换,我一点也不理解 如果我想替换 <script src="core.js"></script> 进入 如何实施preg_替换 非常感谢您的建议。在HTML中使用正则表达式几乎从来都不是一个好主意。考虑一下,比如: foreach($dom->getElementsByTagNa

我可以详细解释一下如何使用php用当前attr替换为tag吗

我阅读手册和一些参考资料

对于简单的命令,我可以理解,但是对于preg_上的搜索命令,请用
~、$1、/n、
等字母替换,我一点也不理解

如果我想替换

 <script src="core.js"></script>

进入


如何实施preg_替换


非常感谢您的建议。

在HTML中使用正则表达式几乎从来都不是一个好主意。考虑一下,比如:

foreach($dom->getElementsByTagName('script') as $script) {
    $temp = $dom->createElement('temp');
    /*
     * create src attribute, append it to $temp and copy value from $script
     * I leave that up to you.
     */
    $script->parentNode->replaceChild($temp, $script);
}

你需要学习正则表达式,这是一个有用的资源

preg_replace的一个快速示例可以是这样的-它可以改进,但希望能给你一个想法

<?php
$string = '<script src="core.js"></script>';
$pattern = '/<script src\s?=\s?['|"](.*)['|"]><\/script>/i';
$replace = ' <temp src="library/js/$1"></temp>';
$result = echo preg_replace($pattern, $replace, $string);
?>

我正在使用tidy…所以我不需要从$dom获取$html..我只需要知道如何使用preg\u replace非常感谢!。我现在就来看看这些网站
<?php
$string = '<script src="core.js"></script>';
$pattern = '/<script src\s?=\s?['|"](.*)['|"]><\/script>/i';
$replace = ' <temp src="library/js/$1"></temp>';
$result = echo preg_replace($pattern, $replace, $string);
?>