从使用正则表达式学习正则表达式。
从网页获取的自己关心的内容后,有些标签会有内联样式,例如
如何只要span而不要style
其他的div什么的都一样。
这个样式是包含(前面有个空格) style=”中间任意多个字符串后面一个”。
来看正则表达式的写法
String regEx = " style=\"(.*?)\"";
使用到的正则规则
字符说明
(pattern)匹配 pattern 并捕获该匹配的子表达式。若要匹配括号字符 ( ),请转义。
.匹配除”\r\n”之外的任何单个字符。若要匹配包括”\r\n”在内的任意字符,请使用诸如”[\s\S]”之类的模式。
*零次或多次匹配前面的字符或子表达式。例如,zo* 匹配”z”和”zoo”。* 等效于 {0,}。
?零次或一次匹配前面的字符或子表达式。例如,”do(es)?”匹配”do”或”does”中的”do”。? 等效于 {0,1}。
结果
关键代码
String content = "带有html标签的内容";
// 正则表达式
String regEx = " style=\"(.*?)\"";
Pattern p = Pattern.compile(regEx);
Matcher m = p.matcher(content);
String okContent = null;
if (m.find()) {
okContent = m.replaceAll("");
}
System.out.println(okContent);
————————————————