Java中正则表达式去除html标签

发布时间 - 2026-01-10 22:58:39    点击率:

Java中正则表达式去除html的标签,主要目的更精确的显示内容,比如前一段时间在做类似于博客中发布文章功能,当编辑器中输入内容后会将样式标签也传入后台并且保存数据库,但是在显示摘要的时候,比如显示正文的前50字作为摘要,那么这时需要去除所有html标签,然后在截取50字,所以就通过了Java正则表达式实现了如下方法,代码如下:

    注:这是Java正则表达式去除html标签方法。

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";// 定义空格回车换行符
  private static final String regEx_w = "<w[^>]*?>[\\s\\S]*?<\\/w[^>]*?>";//定义所有w标签
/**
   * @param htmlStr
   * @return 删除Html标签
   * @author LongJin
   */
  public static String delHTMLTag(String htmlStr) {
    Pattern p_w = Pattern.compile(regEx_w, Pattern.CASE_INSENSITIVE);
    Matcher m_w = p_w.matcher(htmlStr);
    htmlStr = m_w.replaceAll(""); // 过滤script标签
    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(""); // 过滤空格回车标签
    htmlStr = htmlStr.replaceAll(" ", ""); //过滤 
    return htmlStr.trim(); // 返回文本字符串
  }

  ps:方法仅供参考,供大家一起互相学习,若有不足或者疑问欢迎评论。


# java正则去除html标签  # java  # 去除html标签  # Java正则表达式如何匹配特定html标签内的内容  # Java利用正则取标签之间的数据  # java正则替换img标签中src值的方法  # Java使用正则表达式删除所有HTML标签的方法示例  # Java基于正则表达式获取指定HTML标签指定属性值的方法  # java正则匹配HTML中a标签里的中文字符示例  # JAVA 使用正则提取A标签以及href链接  # 正则表达式  # 这是  # 若有  # 大家一起  # 会将  # 类似于  # 仅供参考  # 更精确  # 实现了  # 器中  # 通过了  # 但是在  # 换行符  # 博客  # static  # private  # brush  # final  # script 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: JavaScript如何操作视频_媒体API怎么控制播放  JavaScript实现Fly Bird小游戏  Laravel distinct去重查询_Laravel Eloquent去重方法  Laravel如何实现全文搜索功能?(Scout和Algolia示例)  高防服务器:AI智能防御DDoS攻击与数据安全保障  在线教育网站制作平台,山西立德教育官网?  非常酷的网站设计制作软件,酷培ai教育官方网站?  Laravel怎么连接多个数据库_Laravel多数据库连接配置  如何在IIS7中新建站点?详细步骤解析  如何在搬瓦工VPS快速搭建网站?  Laravel N+1查询问题如何解决_Eloquent预加载(Eager Loading)优化数据库查询  如何在IIS7上新建站点并设置安全权限?  在线ppt制作网站有哪些软件,如何把网页的内容做成ppt?  详解Android中Activity的四大启动模式实验简述  三星网站视频制作教程下载,三星w23网页如何全屏?  如何在腾讯云服务器快速搭建个人网站?  中山网站制作网页,中山新生登记系统登记流程?  免费视频制作网站,更新又快又好的免费电影网站?  Laravel如何配置.env文件管理环境变量_Laravel环境变量使用与安全管理  如何在浏览器中启用Flash_2025年继续使用Flash Player的方法【过时】  微信推文制作网站有哪些,怎么做微信推文,急?  在线制作视频网站免费,都有哪些好的动漫网站?  如何在不使用负向后查找的情况下匹配特定条件前的换行符  Laravel集合Collection怎么用_Laravel集合常用函数详解  手机网站制作与建设方案,手机网站如何建设?  如何为不同团队 ID 动态生成多个非值班状态按钮  php 三元运算符实例详细介绍  Android实现代码画虚线边框背景效果  如何彻底删除建站之星生成的Banner?  打开php文件提示内存不足_怎么调整php内存限制【解决方案】  Laravel Admin后台管理框架推荐_Laravel快速开发后台工具  Gemini怎么用新功能实时问答_Gemini实时问答使用【步骤】  Laravel与Inertia.js怎么结合_使用Laravel和Inertia构建现代单页应用  Java遍历集合的三种方式  如何在IIS服务器上快速部署高效网站?  大型企业网站制作流程,做网站需要注册公司吗?  昵图网官方站入口 昵图网素材图库官网入口  Laravel观察者模式如何使用_Laravel Model Observer配置  如何在Windows虚拟主机上快速搭建网站?  深圳网站制作设计招聘,关于服装设计的流行趋势,哪里的资料比较全面?  Laravel如何使用Seeder填充数据_Laravel模型工厂Factory批量生成测试数据【方法】  Laravel如何优雅地处理服务层_在Laravel中使用Service层和Repository层  QQ浏览器网页版登录入口 个人中心在线进入  php485函数参数是什么意思_php485各参数详细说明【介绍】  Laravel如何处理表单验证?(Requests代码示例)  Android自定义listview布局实现上拉加载下拉刷新功能  高配服务器限时抢购:企业级配置与回收服务一站式优惠方案  如何批量查询域名的建站时间记录?  Laravel如何实现用户角色和权限系统_Laravel角色权限管理机制  如何用AI一键生成爆款短视频文案?小红书AI文案写作指令【教程】