我需要更正某些HTML中的链接,我可以使用preg_replace但是我很难过如何使用引号(“)和撇号(')代替...
href=http://
href="http://
href='http://
href=/
href="/
href='/
不包含引号,它看起来像......
$pattern = "href=http://";
$replacement = "href=http://example.com/test.php?go=http://";
$new = str_ireplace($pattern, $replacement, $html);
但是如何在此实例中编码 preg_replace ?
$pattern = "href=http://'";
$replacement = "href=http://example.com/test.php?go=http://";
此外,通过$模式的优先循环将是理想的。
答案 0 :(得分:1)
$pattern = "/href=['\"]{0,1}(\/|http:\/\/)/";
$replacement = "http://example.com/test.php?go=\\1";
$new = preg_replace($pattern, $replacement, $html);