识别字符串中的URL链接 排除图片地址

需求:识别字符串中的URL链接,不包括图片地址,并给URL链接加上a标签

function handleStr () {
    
    
	// backStr 需要处理得字符串
	var pattern = /(https?:\/\/[^\s]+)/g; // 识别所有http的链接 包括图片四肢
      let urlArr = backStr.match(pattern);  //拿到所有http链接的集合数组
      let reg = /(https?:[^:<>"]*\/)([^:<>"]*)(\.((png!thumbnail)|(png)|(jpg)|(webp)))/; //仅识别图片的地址
      for (let j = 0; j < urlArr.length; j++) {
    
    
        if (!reg.test(urlArr[j])) {
    
      //在这里把图片的地址区分出来
        // 给筛选出来的不是图片地址的链接加上a标签
          backStr = backStr.replace(
              urlArr[j],
              "<a href=" + urlArr[j] + " class='a-link'>" + urlArr[j] + "</a>"
          );
        }
      }
      return linefeed(backStr);
}

没有找到可以直接区分处不是图片地址的正则表达式
有知道的小伙伴可以评论去指教一下

END 祝你有个心平气和不怼测试不骂产品的一天 哈哈哈

猜你喜欢

转载自blog.csdn.net/weixin_44227395/article/details/130771960
今日推荐