发布日期:2018-03-26
从字符串中删除HTML标签+ 查看更多
从字符串中删除HTML标签
+ 查看更多
发布日期:2018-03-23 17:15
分类:JAVA
浏览次数:79
如下:
有没有从Java字符串中删除HTML标签的好方法?如下的正则表达式
replaceAll("\\<.*?>","")会起作用,但 &这样的无法被正确转换,而且在两个尖括号之间非HTML代码也会被移除(换句话说, 在正则表达式中.*?会被移除)
回答:
使用HTML解析器代替正则表达式,使用Jsoup非常简单
public static String html2text(String html) { return Jsoup.parse(html).text(); }
Jsoup也支持移除HTML标签,而那些你需要的有用的标签(例如 <b>, <i> ,<u>)可列为白名单不会被删除.
此外(以下为相关问题链接):
- RegEx match open tags except XHTML self-contained tags
- What are the pros and cons of the leading Java HTML parsers?
- I'm looking for a Java HTML encoder
- XSS prevention in JSP/Servlet web application