我需要从HTML文档中的所有图像标记中提取src元素.
因此,输入是一个HTML页面,输出将是指向图像的URL列表:ex ... http://www.google.com/intl/en_ALL/images/logo.gif
以下是我到目前为止所提出的:
<img\s+src=""(http://.*?)
Run Code Online (Sandbox Code Playgroud)
这不适用于src不在img标记之后的标记,例如:
<img height="1px" src="spacer.gif">
Run Code Online (Sandbox Code Playgroud)
有人可以帮助完成这个正则表达式?这很简单,但我认为这可能是获得答案的更快捷方式.
Ani*_*van 19
以下正则表达式代码段应该有效.
<img[^>]+src="([^">]+)"
Run Code Online (Sandbox Code Playgroud)
它会查找以开头的文本<img,其次是没有一个或多个字符>,然后src=".然后,它抓住了这一点,并在未来之间的一切"或>.
但是,如果可能的话,使用真正的HTML解析器.它更加坚固,可以更好地处理边缘情况.
sle*_*ske 10
你不想那样做.正确解析HTML是一个非常复杂的问题,正则表达式不是一个好的工具.
请参阅例如, 您是否可以提供一些为什么难以使用正则表达式解析XML和HTML的示例?
这是一个很好的解决方案:
你可以用 Javascript 很容易地做到这一点。一个例子如下:
var images = document.getElementsByTagName("img");
for (i=0; i < images.length; i++)
{
// get image src
var currImage = images[i].src;
// do link creation here
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
22553 次 |
| 最近记录: |