详细解决方案
那位大哥可以帮小弟我写个正则表达式
热度:5478 发布时间:2013-02-25 21:20:47
- HTML code
<div class="notice_body"><div id="demo"><div id="demo1"><ul class="nl"><li><span class="gray dateR">04-07</span><a href="show.aspx?id=16446&cid=37" target="_blank" title="广西五一劳动奖章候选人公示">广西五一劳动奖章候选人</a></li><li><span class="gray dateR">04-05</span><a href="trans.aspx?id=16419" target="_blank" title="2012年度广西重大课题研究招标公告">2012年度广西重大课题研</a></li></ul> <br><br><br><br><br><br><br><br></div><div id="demo2"></div>
我是在没办法了,到这里来求救了,
这是个网页,我要用程序抓取上面代码中的一些信息,有<a></a>标签里面的内容和<a>的超链接。
从上面的html应该获取到的信息是show.aspx?id=16446&cid=37 广西五一劳动奖章候选人公示">广西五一劳动奖章候选人 trans.aspx?id=16419 2012年度广西重大课题研究招标公告">2012年度广西重大课题研。
好像可以用HTMLParser来作,但是我不太清楚怎么用
希望大家帮帮忙了
------解决方案--------------------------------------------------------
- Java code
String str ="<li><span class=\"gray dateR\">04-07</span><a href=\"show.aspx?id=16446&cid=37\" target=\"_blank\" title=\"广西五一劳动奖章候选人公示\">广西五一劳动奖章候选人</a></li>"+ "<li><span class=\"gray dateR\">04-05</span><a href=\"trans.aspx?id=16419\"target=\"_blank\" title=\"2012年度广西重大课题研究招标公告\">2012年度广西重大课题研</a></li>"+ "</ul><br><br><br><br><br><br><br><br></div><div id=\"demo2\"></div>"; Pattern p=Pattern.compile("<a\\s+.*?>?</a>"); Matcher m = p.matcher(str); while(m.find()){ System.out.println(m.group()); }不管有没有用,先给你救救急,看用的上么
------解决方案--------------------------------------------------------
- Java code
//效率有点低,不过功能能实现吧。。public static void main(String[] args) { String str = "<a href=\"show.aspx?id=16446&cid=37\" target=\"_blank\" title=\"广西五一劳动奖章候选人公示\">广西五一劳动奖章候选人</a>"+ "<div class=\"notice_body\">" + "<div id=\"demo\"><div id=\"demo1\">"+ "<ul class=\"nl\">" + "<li><span class=\"gray dateR\">04-07</span>" + "<a href=\"show.aspx?id=16446&cid=37\" " + "target=\"_blank\" title=\"广西五一劳动奖章候选人公示\">广西五一劳动奖 章候选人 </a></li>"+ "<li><span class=\"gray dateR\">04-05</span>" + "<a href=\"trans.aspx?id=16419\"target=\"_blank\" title=\"2012年度广西重大课题研究招标公告\">2012年度广西重大课题研</a></li>"+ "</ul><br><br><br><br><br><br><br><br></div><div id=\"demo2\"></div>"; Pattern p=Pattern.compile("<div class=\"notice_body\">|<div|</div>|<a\\s+href=\"(.*?>?)</a>"); Matcher m = p.matcher(str); Boolean flag = false; int count = 0; while(m.find()){ if(m.group().equals("<div class=\"notice_body\">")){ flag = true; count++; } else if(m.group().equals("<div")){ if(flag==true) count++; } else if(m.group().equals("</div>")){ if(flag==true&&count!=0){ count--; } if(count==0){ flag = false; } } else{ if(flag==true){ System.out.println(m.group()); } } } }
相关解决方案
- js 正则表达式 运用变量
- 正则表达式 高手来解解决办法
- 【java】以上需求怎么写 java 正则表达式
- 求好手解答 正则表达式 (急)
- 正则表达式
- java 正则表达式 入门,该如何处理
- 正则表达式 IP,该怎么处理
- 正则表达式 特殊字符串轮换
- 正则表达式,该如何处理
- 正则表达式 提取 html 标签的内容,该如何解决
- "正则表达式"
- 正则表达式 获取图片会合
- 正则表达式 获取图片聚合
- 正则表达式 有关问题
- C# 正则表达式 一个字符串中获取接续的数字
- 正则表达式·好手来
- javascript 正则表达式 请用小写字母和数目字,首字母必须为字母,长度5-15
- 求密码 正则表达式 要求字符 数目字 特殊符号
- 求将HTML代码变换为UBB代码的c#正则表达式
- 正则表达式 替换有关问题
- asp.net 正则表达式 有关问题
- [][正则表达式]正则表达式的有关问题
- 正则表达式 帮忙看下解决方法
- [正则表达式]高分, 怎么书写(包含匹配)的正则表达式
- 正则表达式(huangwenquan123)解决办法
- 正则表达式 ing
- 正则表达式.字符里有括号咋匹配?比如:l like the(123)
- 正则表达式 替换字符串,该怎么解决
- c#正则表达式
- 正则表达式-空或者正整数可以吗?>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>该如何处理