首页 > 编程 > Java > 正文

Java使用正则表达式删除所有HTML标签的方法示例

2019-11-26 12:10:05
字体:
来源:转载
供稿:网友

本文实例讲述了Java使用正则表达式删除所有HTML标签的方法。分享给大家供大家参考,具体如下:

package com.xz.cxzy.utils;import java.util.regex.Matcher;import java.util.regex.Pattern;public class HtmlUtil {  private static final String regEx_script = "<script[^>]*?>[//s//S]*?<///script>"; // 定义script的正则表达式  private static final String regEx_style = "<style[^>]*?>[//s//S]*?<///style>"; // 定义style的正则表达式  private static final String regEx_html = "<[^>]+>"; // 定义HTML标签的正则表达式  private static final String regEx_space = "//s*|/t|/r|/n";//定义空格回车换行符  /**   * @param htmlStr   * @return   * 删除Html标签   */  public static String delHTMLTag(String htmlStr) {    Pattern p_script = Pattern.compile(regEx_script, Pattern.CASE_INSENSITIVE);    Matcher m_script = p_script.matcher(htmlStr);    htmlStr = m_script.replaceAll(""); // 过滤script标签    Pattern p_style = Pattern.compile(regEx_style, Pattern.CASE_INSENSITIVE);    Matcher m_style = p_style.matcher(htmlStr);    htmlStr = m_style.replaceAll(""); // 过滤style标签    Pattern p_html = Pattern.compile(regEx_html, Pattern.CASE_INSENSITIVE);    Matcher m_html = p_html.matcher(htmlStr);    htmlStr = m_html.replaceAll(""); // 过滤html标签    Pattern p_space = Pattern.compile(regEx_space, Pattern.CASE_INSENSITIVE);    Matcher m_space = p_space.matcher(htmlStr);    htmlStr = m_space.replaceAll(""); // 过滤空格回车标签    return htmlStr.trim(); // 返回文本字符串  }  public static String getTextFromHtml(String htmlStr){    htmlStr = delHTMLTag(htmlStr);    htmlStr = htmlStr.replaceAll(" ", "");    htmlStr = htmlStr.substring(0, htmlStr.indexOf("。")+1);    return htmlStr;  }  public static void main(String[] args) {    String str = "<div style='text-align:center;'> 整治“四风”  清弊除垢<br/><span style='font-size:14px;'> </span><span style='font-size:18px;'>公司召开党的群众路线教育实践活动动员大会</span><br/></div>";    System.out.println(getTextFromHtml(str));  }}

PS:这里再为大家提供2款非常方便的正则表达式工具供大家参考使用:

JavaScript正则表达式在线测试工具:
http://tools.VeVB.COm/regex/javascript

正则表达式在线生成工具:
http://tools.VeVB.COm/regex/create_reg

更多关于java算法相关内容感兴趣的读者可查看本站专题:《Java正则表达式技巧大全》、《Java数据结构与算法教程》、《Java操作DOM节点技巧总结》、《Java文件与目录操作技巧汇总》和《Java缓存操作技巧汇总

希望本文所述对大家java程序设计有所帮助。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表