提取富文本中的所有图片和匹配获取所有图片链接

该博客主要介绍了如何从富文本中提取所有的图片链接。通过提供的两个函数`getImgSrc`和`srcUrl`,可以有效地抓取并返回富文本中<img>标签内的src属性值,从而获取到图片URL数组。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

对百度富文本里面的图片链家进行提取,并生成数组返回。

/**
 * 提取富文本中的所有图片
 * @param{*} richtext
 */
export function getImgSrc(richtext) {
  const imgList = []
  richtext.replace(/<img [^>]*src=['"]([^'"]+)[^>]*>/g, (match, capture) => {
    imgList.push(capture)
  })
  return imgList
}
/**
 * 匹配获取所有图片链接
 * @param{*} str
 */
export function srcUrl(str) {
  const pa = []
  // var str = "this is test string <img src=\"http:yourweb.com/test.jpg\" width='50' > 123 and the end <img src=\"所有地址也能匹配.jpg\" /> 33! <img src=\"/uploads/attached/image/20120426/20120426225658_92565.png\" alt=\"\" />"
  // 匹配图片(g表示匹配所有结果i表示区分大小写)
  var imgReg = /<img.*?(?:>|\/>)/gi
  // 匹配src属性
  var srcReg = /src=[\'\"]?([^\'\"]*)[\'\"]?/i
  var arr = str.match(imgReg)
  // alert('所有已成功匹配图片的数组:' + arr)
  if (arr) {
    for (var i = 0; i < arr.length; i++) {
      var src = arr[i].match(srcReg)
      // 获取图片地址
      if (src[1]) {
        // alert('已匹配的图片地址' + (i + 1) + ':' + src[1])
        pa.push(src[1].slice(0, src[1].length - 1))
      }
    }
  }

  return pa
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

沙滩上的一颗石头

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值