我很难在一段内容中尝试用<h1>
替换<h2>
代码。
我最接近的是:
preg_replace('/<h1[\s*](class|id|style)="(.*?)">(\w*?)<\/h1>/mi', '<h2 $1="$2">$3</h2>', $content);
这里的问题是常规的h1行:
<h1>This is the heading</h1>
没有得到捕获。
这一行:
<h1 style="font-size:13px">Another heading</h1>
也不会被捕获,这会让我感到困惑,因为它使用与类和ID相同的设置,仅使用特殊字符,例如-
,:
等。我以为.*?
会覆盖。
任何帮助都会非常感激。
答案 0 :(得分:0)
以下是类似的内容,包含所有属性:(除了&gt;属性中的所有内容)
$str= <<<EOT
<h1>This is the heading</h1>
<h1 style="font-size:13px">Another heading</h1>
EOT;
$str = preg_replace('#<h1([^>]*)>(.*)</h1>#m','<h2$1>$2</h2>', $str);
print $str;