扫码关注官方订阅号
如下html字符串:
处理完如下:
想了想,要是直接把所有不属于img的引号找到比较困难,但是可以先把img的字符串整体先提取出来并保存,替换成特殊字符串,然后再去找到所有的引号,替换成\",之后再把保存的img字符串替换回来。
Pattern pattern=Pattern.compile("<img src=.+>"); String str="你的字符串"; Matcher matcher=pattern.matcher(str); List<String> strList=new ArrayList<String>(); while(matcher.find()){ strList.add(matcher.group());//将带引号的img标签保存下来 } str=matcher.replaceAll("<img>");//将所有的带引号img标签替换成<img> Pattern pat=Pattern.compile("\""); Matcher mat=pat.matcher(str); str=mat.replaceAll("\\\\\"");//将剩下的引号替换为\"; Pattern p=Pattern.compile("<img>"); Matcher m=p.matcher(str); int i=0; while(m.find()){ str=m.replaceFirst(strList.get(i));//将带引号的img标签再替换回来 i++; } System.out.println(str);
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
想了想,要是直接把所有不属于img的引号找到比较困难,但是可以先把img的字符串整体先提取出来并保存,替换成特殊字符串,然后再去找到所有的引号,替换成\",之后再把保存的img字符串替换回来。