如何在一大段的字符串里面找到所有的<img>标签并且把它们存到一个数组里面?

是不是用正则表达式匹配如何分组?应该如何写呢?

阅读 5.9k
3 个回答

String.prototype.match()

当字符串匹配到正则表达式(regular expression)时,match() 方法会提取匹配项。

https://developer.mozilla.org...

<img src="" alt="">
<div></div>
<img src="" alt="">
<div></div>
<img src="" alt="">
<div></div>
<img src="" alt="">
<div></div>
<img src="" alt="">
<div></div>
<img src="" alt="">
<div></div>
<img src="" alt="">
<div></div>
<img src="" alt="">
<div></div>
<img src="" alt="">
<div></div>
<img src="" alt="">
<div></div>
<script>
var str = document.body.innerHTML
console.log(str.match(/<img.+?>/ig))
</script>

https://jsfiddle.net/ycloud/e...

    //图片
    var a = '<img src="../login/img/logo.img" alt="">'
    //正则
     var re=/<img\b[^>]*>/;
    //结果
    console.log(a.match(re)[0])
    //<img src="../login/img/logo.img" alt="">

    //或者提取出src
   var re2 = /src=[\'\"]?([^\'\"]*)[\'\"]?/i;
  //结果
   console.log(a.match(re2)[1])
    // ../login/img/logo.jpg

repalce方法 你可以看一下

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题