java正则匹配非html字符串_java正则表达式去除html中所有的标签和特殊HTML字符(以开头的)...
packagecom.comcons.utils;importjava.io.BufferedReader;importjava.io.FileNotFoundException;importjava.io.FileReader;importjava.io.IOException;importjava.util.regex.Pattern;public classReduceHtml2Text {/*** 删除Html标签
*@paraminputString
*@return
*/
public staticString removeHtmlTag(String inputString) {if (inputString == null)return null;
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;
java.util.regex.Pattern p_special;
java.util.regex.Matcher m_special;try{//定义script的正则表达式{或
String regEx_script = "<[\s]*?script[^>]*?>[\s\S]*?<[\s]*?\/[\s]*?script[\s]*?>";//定义style的正则表达式{或
String regEx_style = "<[\s]*?style[^>]*?>[\s\S]*?<[\s]*?\/[\s]*?style[\s]*?>";//定义HTML标签的正则表达式
String regEx_html = "<[^>]+>";//定义一些特殊字符的正则表达式 如:
String regEx_special = "\&[a-zA-Z]{1,10};";
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_special =Pattern.compile(regEx_special, Pattern.CASE_INSENSITIVE);
m_special=p_special.matcher(htmlStr);
htmlStr= m_special.replaceAll(""); //过滤特殊标签
textStr =htmlStr;
}catch(Exception e) {
e.printStackTrace();
}return textStr;//返回文本字符串
}/*** 测试用的main函数
*@paramargs*/
public static voidmain(String[] args) {
StringBuffer sb= newStringBuffer();try{
FileReader fr= new FileReader("D:/test.html");
BufferedReader br= newBufferedReader(fr);
String s= "";while((s = br.readLine())!=null){
sb.append(s);
}
}catch(FileNotFoundException e) {//TODO Auto-generated catch block
e.printStackTrace();
}catch(IOException e) {//TODO Auto-generated catch block
e.printStackTrace();
}
String ssss=ReduceHtml2Text.removeHtmlTag(sb.toString());
System.out.println(ssss);
}
}
java正则匹配非html字符串_java正则表达式去除html中所有的标签和特殊HTML字符(以开头的)...相关推荐
- java去除以张开头的人名_java正则表达式去除html中所有的标签和特殊HTML字符(以开头的)...
packagecom.comcons.utils;importjava.io.BufferedReader;importjava.io.FileNotFoundException;importjava ...
- Java正则匹配提取年月日字符串
Java正则匹配提取年月日字符串 String string1="9999-9-99";Pattern p = Pattern.compile("(\\d{4})-(\\ ...
- java正则匹配英文句号_「正则表达式」王国奇遇记
第一回 初来乍到 NPC: "欢迎来到正则表达式的国度,勇士!这里的每一个人都使用正则表达式,我是这里的 NPC,每一个来到这里的人都将由我代为介绍正则世界的规则,至于能领悟到何种境界,就看 ...
- java正则匹配买火车票_matlab的正则表达式
regexp--用于对字符串进行查找,大小写敏感: regexpi--用于对字符串进行查找,大小写不敏感: regexprep--用于对字符串进行查找并替换. 第一部分--单个字符的匹配 1 句点符号 ...
- java正则匹配英文句号_谈谈正则表达式中的句号.
我们知道,正则表达式中,可以用 . 表示任意单个字符,但在underscore和jquery的源代码中,我们可以看到,这些著名类库的代码中,经常并不是用 . 来表示任意字符,而是使用 [\w\W] 或 ...
- java 正则 空白字符_关于JAVA正则匹配空白字符的问题
今天遇到一个字符串,怎么匹配空格都不成功!!! 我把空格复制到test.properties文件 显示"\u3000" ,这是什么? 这是全角空格!!! 查了一下 \s ...
- java正则表达式所有字符串_java正则表达式如何获取字符串中所有匹配内容
java正则表达式如何获取字符串中所有匹配内容以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! java正则表达式如何获取 ...
- java正则匹配table_js正则匹配table tr
js正则匹配table tr 我觉得比ijao简单,但是脑子就是转不过弯....请正则高手看看阿. 复制代码 代码如下: title title2 data1 data2 data1 da ...
- mysql 正则匹配 捕获组_常用正则表达式 捕获组(分组)
1.img标签 //,空格后src以'或"开始..... Regex reg = new Regex("]*\\ssrc=(['\"]+[^<>'\" ...
最新文章
- 时间序列基础教程总结!
- 每日一皮:离职时候的项目交接...
- 【JAVA并发编程实战】3、同步容器
- jupyter可以打开HTML文件吗,Jupyter ~ 像写文章般的 Coding (附:同一个ipynb文件,执行多语言代码)...
- python自然语言分析 何翠仪_如何用 Python 中的 NLTK 对中文进行分析和处理?
- stl优先队列定义可以吗_C ++ STL | 用户定义的优先级队列比较器
- 从Demo到Engine(二) -- Render Queue Sort
- 先进事迹计算机维护与维修,汽车维修工先进事迹
- Excel的文件打开特别慢,xls文件特别大解决一例
- Ubuntu虚拟机安装EDA工具:VCS+Verdi+dve2018方法教程
- tkinter向文本框里加内容_给tkinter文本框添加右键菜单
- 【STM32学习】基于STM32F411CEU6的USB储存设备
- python广播机制是什么意思_Python numpy 广播机制
- java查询学号数据库_数据库SQL查询语句练习题 PDF 下载
- 大一上学期反思与总结
- 腾讯产品总监曹菲:产品经理们,五年后,你会失业吗? 【上】
- 坚果云+svn实现异地非局域网个人代码版本管理
- TEC1401.Report开发技术总结 - 第七章 使用BI Publisher开发报表-创建一个简单的RTF模板(2/5)
- 软件测试面试题:手工测试的局限性?
- 从“千里眼”到“火眼金睛”,你要看得懂的小助手还是时刻盯着的望远镜?...
热门文章
- unity python_Unity引擎内嵌python
- ifix的MySQL数据库_iFIX 技术文章:iFIX历史数据库
- java 悬浮提示框_表格(悬浮框提示)
- java phaser用法_第3章Phaser的使用-(java并发编程核心方法与框架)
- python经典100例(41-60)
- mysql load character_mysql load data Invalid utf8mb4 character string: ”
- 从点到线:逻辑回归到条件随机场
- 史上最萌最认真的机器学习/深度学习/模式识别入门指导手册(一)
- 论文浅尝 - ICML2020 | 通过关系图上的贝叶斯元学习进行少样本关系提取
- 论文浅尝 | 问题生成(QG)与答案生成(QA)的结合