java 正则 标签_java 使用正则表达式过滤HTML中标签

/*** 去掉文本中的html标签

*

*@paraminputString

*@return

*/

public staticString html2Text(String inputString) {if(StringUtils.isEmpty(inputString)) {return null;

}

String htmlStr=inputString;

String textStr= "";

java.util.regex.Pattern p_script;

java.util.regex.Matcher m_script;

java.util.regex.Pattern p_style;

java.util.regex.Matcher m_style;

java.util.regex.Pattern p_html;

java.util.regex.Matcher m_html;

java.util.regex.Pattern p_html1;

java.util.regex.Matcher m_html1;try{

String regEx_script= "]*?>[\\s\\S]*?"; //定义script的正则表达式{或

String regEx_style = "<[\\s]*?style[^>]*?>[\\s\\S]*?<[\\s]*?\\/[\\s]*?style[\\s]*?>"; //定义style的正则表达式{或

String regEx_html = "<[^>]+>"; //定义HTML标签的正则表达式

String regEx_html1 = "<[^>]+";

p_script=Pattern.compile(regEx_script,

Pattern.CASE_INSENSITIVE);

m_script=p_script.matcher(htmlStr);

htmlStr= m_script.replaceAll(""); //过滤script标签

p_style=Pattern

.compile(regEx_style, Pattern.CASE_INSENSITIVE);

m_style=p_style.matcher(htmlStr);

htmlStr= m_style.replaceAll(""); //过滤style标签

p_html=Pattern.compile(regEx_html, Pattern.CASE_INSENSITIVE);

m_html=p_html.matcher(htmlStr);

htmlStr= m_html.replaceAll(""); //过滤html标签

p_html1=Pattern

.compile(regEx_html1, Pattern.CASE_INSENSITIVE);

m_html1=p_html1.matcher(htmlStr);

htmlStr= m_html1.replaceAll(""); //过滤html标签

textStr=htmlStr;//替换&nbsp;

textStr = textStr.replaceAll("&", "").replaceAll("nbsp;", "");

}catch(Exception e) {

System.err.println("Html2Text: " +e.getMessage());

}return textStr;//返回文本字符串

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值