Java正则表达式获得html字符串里的<img src=""/> 中的url列表

avatar 2020年04月06日21:06:23 0 816 views
在帮朋友写代码的时候,遇到一个场景,需要获取富文本编辑器里的图片URL集合。

最简单的办法就是使用 正则表达式,记录一下。
public static List<String> getImgSrc(String htmlStr) {
String img = "";
Pattern imgPattern;
Matcher imgMatcher;
List<String> pics = new ArrayList<>();
String imgReg = "<img.*src\\s*=\\s*(.*?)[^>]*?>";
imgPattern = Pattern.compile(imgReg, Pattern.CASE_INSENSITIVE);
imgMatcher = imgPattern.matcher(htmlStr);
while (imgMatcher.find()) {
img = img + "," + imgMatcher.group();
Matcher m = Pattern.compile("src\\s*=\\s*\"?(.*?)(\"|>|\\s+)").matcher(img);
while (m.find()) {
pics.add(m.group(1));
}
}
return pics;
}


/**
* 测试
* @param args
*/
public static void main(String[] args) {
String htmlStr = "<div class=\"fr-element fr-view\" dir=\"ltr\" contenteditable=\"true\" style=\"min-height: 400px;\" aria-disabled=\"false\" spellcheck=\"true\"><p><img src=\"/upload/2020/4/awards.jpg\" style=\"width: 144px;\" class=\"fr-fic fr-dib fr-draggable fr-fil\"></p><p><img src=\"/upload/2020/4/blog1.jpg\" style=\"width: 156px;\" class=\"fr-fic fr-dib fr-draggable fr-fil\"></p><p><img src=\"/upload/2020/4/blog4.jpg\" style=\"width: 170px;\" class=\"fr-fic fr-dib fr-draggable fr-fil\"></p></div>";
System.out.println(getImgSrc(htmlStr));
}

  • 微信
  • 交流学习,有偿服务
  • weinxin
  • 博客/Java交流群
  • 资源分享,问题解决,技术交流。群号:590480292
  • weinxin
avatar

发表评论

avatar 登录者:匿名
可以匿名评论或者登录后台评论,评论回复后会有邮件通知

  

已通过评论:0   待审核评论数:0