首页 > 开发 > Java > 正文

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

2024-07-13 10:08:23
字体:
来源:转载
供稿:网友

本文实例讲述了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));  }}

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


注:相关教程知识阅读请移步到JAVA教程频道。
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表