【发布时间】:2015-05-11 12:11:53
【问题描述】:
我想要一个正则表达式代码,将所有“src”字符串替换为“data-src”,仅用于 img 标签。
这是一个例子:
<p>Lorem ipsum dolor sit amet.</p>
<p><img src="http://www.domain.com/images/test.jpg"></p>
<p>Lorem ipsum dolor sit amet.</p>
<p><iframe src="https://www.test.com/embed/4PJWKNOQIf4?list=PLMf7VY8La5RFDHl_LirAIRK1fhxBWIhqx" frameborder="0" width="300" height="169"></iframe></p>
应该是:
<p>Lorem ipsum dolor sit amet.</p>
<p><img data-src="http://www.domain.com/images/test.jpg"></p>
<p>Lorem ipsum dolor sit amet.</p>
<p><iframe src="https://www.test.com/embed/4PJWKNOQIf4?list=PLMf7VY8La5RFDHl_LirAIRK1fhxBWIhqx" frameborder="0" width="300" height="169"></iframe></p>
所以,这意味着 img 标签中的所有“src”属性都应该替换为“data-src”。
我尝试使用此正则表达式模式,但它不起作用。
对不起我的英语。
谢谢。
【问题讨论】:
-
您在尝试自己解决这个问题时遇到了什么困难?
-
如果您将
src替换为data-src,您的图像将不再可见。您应该从不使用正则表达式解析 HTML。请改用a PHP DOM parser。 -
我同意 Jay Blanchard 的观点,您不应该使用正则表达式解析 HTML,而应该使用真正的解析器 -- 但是 -- 您错过了显示您正在尝试的正则表达式?
标签: php html regex expression