需求就是替换HTML文档中的敏感词。但是只想替换纯文本,而有些html标签中含有敏感词,我是不想替换的。比如img标签的src中含有敏感词,如果把src中的敏感词替换那么图片就显示不了了。
比如 <p>今天天气不错abc</p><img src="abc.jpg"/> 我想替换abc为*
那么替换为<p>今天天气不错*</p><img src="abc.jpg"/>
如果我单纯的使用Java的String.replaceAll("abc","*")
那么就会得到 <p>今天天气不错*</p>
<img src="*.jpg/>
,这样图片就加载不出来了,这并不是我想要的。
想了挺久,也想了正则,各位大佬有没有什么好方法???
为何非要在页面级别用正则替换?在存库的时候就替换掉不好吗?或者在取出来渲染到页面模板的时候做替换不好吗?为何非要纠结在html代码中进行替换?