我试图将所有图像元素匹配为字符串,
这是我的正则表达式:
html.match(/<img[^>]+src="http([^">]+)/g);
这可行,但我想提取src
所有图像。因此,当我对此字符串执行正则表达式时:
<img src="http://static2.ccn.com/ccs/2013/02/img_example.jpg />
它返回:
"http://static2.ccn.com/ccs/2013/02/img_example.jpg"
您需要使用捕获组()
提取网址,如果您想全局匹配g
,即不止一次,当使用捕获组时,您需要使用exec
在一个循环中(match
全局匹配时忽略捕获组)。
例如
var m,
urls = [],
str = '<img src="http://site.org/one.jpg />\n <img src="http://site.org/two.jpg />',
rex = /<img[^>]+src="?([^"\s]+)"?\s*\/>/g;
while ( m = rex.exec( str ) ) {
urls.push( m[1] );
}
console.log( urls );
// [ "http://site.org/one.jpg", "http://site.org/two.jpg" ]
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)