我想这样做:
<span class="introduction">
<img alt="image" src="/picture.jpg" />
</span>
Run Code Online (Sandbox Code Playgroud)
变成这个:
<img alt="image" src="/picture.jpg" />
Run Code Online (Sandbox Code Playgroud)
我如何用正则表达式做到这一点?也就是说,如何从给定的html字符串中仅提取img-tag?
注意:在introduction-tag中可以有更多的html但只有一个img-tag
你不应该在HTML上真正使用正则表达式,那么:?
$string = '<span class="introduction"><img alt="image" src="/picture.jpg" /></span>';
echo strip_tags($string, '<img>');
Run Code Online (Sandbox Code Playgroud)
否则我会使用HTML/XML解析器
怎么样
"<img[^>]*>"
Run Code Online (Sandbox Code Playgroud)
尝试用grep
kent$ echo '<span class="introduction">
quote> <img alt="image" src="/picture.jpg" />
quote> </span>
quote> '|grep -P "<img[^>]*>"
<img alt="image" src="/picture.jpg" />
Run Code Online (Sandbox Code Playgroud)