我不明白正则表达式。我需要更改以这种方式格式化的 img 标签:<img class="special-class" (then custom srcs and whatever) />
.我想preg_replace会做这项工作,还是会有更有效的方法?
我只需要正则表达式方法来搜索第一个类的完整 img 标签,这样我就可以用另一个保存为 $buzz 的字符串替换它
要匹配完整的 img 标签(具有有效的 html 并且其中没有不带引号的>
(:
preg_match('#<img([^>]+)>#i', $html, $match);
不知道你还想要什么...
$match
将包含 [0]
中的完整和 [1]
中的属性(作为字符串(。
如果要匹配类属性:
preg_match('#class="([^"])"#i', $html, $match);
编辑
呵呵,这可能有效:
preg_replace('#<img[^>]+class="[^"]*replace[^"]*"[^>]*>#', '', $html);
如果我输入:
<img src="oele" class="boele" />
<img src="boele" />
<img src class="replace boele">
它只替换最后一个 IMG,其余的保持不变。
正则表达式规则!
我会选择Javascript解决方案(想想jQuery(。如果你愿意,我可以提供帮助