求大侠指教一个正则表达式 正则我不太会,推荐你用jsoup这个开源jar,这个是解析html利器,非常强大,查询语法和jquery语法很类似 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 推荐使用html解析库,,,正则表达式不适合这种场合。。 public static void main(String[] args) { String s = "<h1>2014</h1><table><tr><td><strong>November</strong><a href=\"a.html\">a</a></td><td></td></tr></table><h1>2013</h1><table><tr><td><strong>October</strong><a href=\"b.html\">b</a></td><td><strong>September</strong><a href=\"c.html\">c</a></td></tr></table><h1>2012</h1><table><tr><td><strong>August</strong><a href=\"d.html\">d</a></td><td><strong>July</strong><a href=\"e.html\">e</a></td><td><strong>June</strong><a href=\"f.html\">f</a></td></tr></table>"; Matcher m = Pattern.compile("<h1>(.*?)</h1><table>(.*?)</table>").matcher(s); while (m.find()) { Matcher subM = Pattern.compile("<strong>(.*?)</strong>.*?<a href=\"(.*?)\">.</a>").matcher(m.group(2)); while (subM.find()) { System.out.println(m.group(1) + " " + subM.group(1) + " "+ subM.group(2)); } } } html格式的建议用jsoup要比正则精准,java的正则不支持平衡组的,不适合解析html这样的数据格式。你贴出来的只是部分,如果其它地方不会影响的话,可以用楼上的正则 EXTJS主细表功能不知用哪些控件结合使用 怎么样把double类型的字符串转化为整形 新手求教htmlparser 简单问题 我快疯了,这个错莫名其妙.关于hibernate 和mysql的。高手进来看看饿,在线等 j2ee基础问题 JSP连接数据库问题? 有没有JS的计算器控件 struts初学者有个问题想请教各位高手 关于JAVA的初级问题,请赐教!!! 初学struts的问题 不明白hibernateDaoSupport存在的意义 spring MVC 版本的祝福墙
String s = "<h1>2014</h1><table><tr><td><strong>November</strong><a href=\"a.html\">a</a></td><td></td></tr></table><h1>2013</h1><table><tr><td><strong>October</strong><a href=\"b.html\">b</a></td><td><strong>September</strong><a href=\"c.html\">c</a></td></tr></table><h1>2012</h1><table><tr><td><strong>August</strong><a href=\"d.html\">d</a></td><td><strong>July</strong><a href=\"e.html\">e</a></td><td><strong>June</strong><a href=\"f.html\">f</a></td></tr></table>";
Matcher m = Pattern.compile("<h1>(.*?)</h1><table>(.*?)</table>").matcher(s);
while (m.find()) {
Matcher subM = Pattern.compile("<strong>(.*?)</strong>.*?<a href=\"(.*?)\">.</a>").matcher(m.group(2));
while (subM.find()) {
System.out.println(m.group(1) + " " + subM.group(1) + " "+ subM.group(2));
}
}
}