在帮朋友写代码的时候,遇到一个场景,需要获取富文本编辑器里的图片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));
}
您可以选择一种方式赞助本站
支付宝扫一扫赞助
微信钱包扫描赞助
赏