六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 26|回复: 0

java过滤html标签函数

[复制链接]

升级  74%

9

主题

9

主题

9

主题

童生

Rank: 1

积分
37
 楼主| 发表于 2013-2-7 14:35:27 | 显示全部楼层 |阅读模式
public static String Html2Text(String inputString) {
            String htmlStr = inputString; //含html标签的字符串
                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;
      
          try {
           String regEx_script = "<[\\s]*?script[^>]*?>[\\s\\S]*?<[\\s]*?\\/[\\s]*?script[\\s]*?>"; //定义script的正则表达式{或<script[^>]*?>[\\s\\S]*?<\\/script> }
           String regEx_style = "<[\\s]*?style[^>]*?>[\\s\\S]*?<[\\s]*?\\/[\\s]*?style[\\s]*?>"; //定义style的正则表达式{或<style[^>]*?>[\\s\\S]*?<\\/style> }
              String regEx_html = "<[^>]+>"; //定义HTML标签的正则表达式
         
              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标签
         
           textStr = htmlStr;
         
          }catch(Exception e) {
                   System.err.println("Html2Text: " + e.getMessage());
          }
      
          return textStr;//返回文本字符串
           }
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表