JAVA正则表达式的字符串查找操作

moon5284 2011-09-26 03:52:16
在C#中有如下操作:

public static string[] GetRegValue(string HtmlCode, string RegexString, string GroupKey)
{
MatchCollection m;
Regex r;
r = new Regex(RegexString, RegexOptions.Multiline | RegexOptions.Singleline);
m = r.Matches(HtmlCode);
string[] MatchValue = new string[m.Count];
for (int i = 0; i < m.Count; i++)
{
MatchValue[i] = m[i].Groups[GroupKey].Value;
}
return MatchValue;
}


以上方法可进行复杂的字符串提取功能,如:
GetRegValue(text, "name=\"mailAddress\" type=\"text\" value=\"(?<id>.*?)\"", "id")[0];

可以将文本中一串 ...name="mailAddress" type="text" value="要提取的内容"...严格的提取出来,而不用管要提取的目标串的格式。
请问在JAVA中如何使用正则实现以上功能(在字符串中查找字符串)?
...全文
522 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
moon5284 2011-09-27
  • 打赏
  • 举报
回复
6楼正解!谢谢!
zhouYunan2010 2011-09-26
  • 打赏
  • 举报
回复
请问是否只提取备案信息?是否备案链接地址总是包含“miibeian”?
下面给出只提取备案信息的代码

Pattern p = Pattern.compile("miibeian.*?>(.*?)<");
Matcher m = p.matcher(" <a href=http://www.miibeian.gov.cn target=_blank>京ICP证030173号</a>");
if(m.find()){
System.out.println(m.group(1));
}
moon5284 2011-09-26
  • 打赏
  • 举报
回复
String text:
<a class=status1 id=s_more_feed_link href="#" onclick="return false;">更多新鲜事...</a><div class=status2>新鲜事读取中...</div><div class=status3>没有更多新鲜事</div><div class=status4>这里展现您在空间、贴吧的好友新鲜事。去<a target=_blank href="http://hi.baidu.com/sys/checkuser/moon5284/3">百度空间</a>、<a target=_blank href=http://tieba.baidu.com>百度贴吧</a>关注好友吧。</div></div></div> </div></textarea></div>  <script>window.bsIsOp=1;</script>  </div><div style="margin-left:1px;" class=s-add-mods id=s_add_mods><a class=s-add-addico id=s_add_addico><span id=s_addico_span class=s-addico-span>添加服务</span></a><div class=s-parent-ico id=s_parent_ico><div class=s-add-shortcut id=s_add_shortcut><a id=s_shortcut_span class="s-shortcut-span s-shortcut-span-limg" onclick="S.Mod.addClick(1,'s_shortcut_span');" href="#shortcut">导航</a></div><div class=s-add-hithot id=s_add_hithot><a id=s_hithot_span class="s-hithot-span s-hithot-span-limg" onclick="S.Mod.addClick(6,'s_hithot_span');" href="#hithot">实时热点</a></div><div class=s-add-app id=s_add_app><a id=s_app_span class="s-app-span s-app-span-img" onclick="S.Mod.addClick(2,'s_app_span');" href="#app">应用</a></div><div class=s-add-news id=s_add_news><a id=s_news_span class="s-news-span s-news-span-img" onclick="S.Mod.addClick(3,'s_news_span');" href="#feed">新鲜事</a></div></div><input type=hidden value="1,6" name=aMods id=aMods></div></div></div><div id=bottom_container style="padding-top:40px;" class=bottom> <div class=bottom-line1 style="padding-bottom: 5px;"><a href=http://e.baidu.com/?refer=888>加入百度推广</a> | <a href=http://top.baidu.com>搜索风云榜</a> | <a href=http://home.baidu.com>关于百度</a> | <a href=http://ir.baidu.com>About Baidu</a> | <a href=http://dev.baidu.com/home/index.html target=_blank>加入开放首页</a></div><div class=bottom-line2>©2011 Baidu <a href=/duty/>使用百度前必读</a> <a href=http://www.miibeian.gov.cn target=_blank>京ICP证030173号</a> <em class=s-bottom-copyright>    </em></div></div><div id=s_tips class=tip></div><input type=hidden id=bsToken name=bsToken value="7475a0857a322d6fda8327ddfa77af34"><input type=hidden id=appToken name=appToken value="08b4ffa9e28b79f9506cbe7ee31b354b"><input type=hidden id=appKey name=appKey value="5r7SmiUici27lVfVBep1K7BA"><script>wpo.bstart1=wpo.bstart2=new Date*1;</script><script type="text/javascript" src="http://su.bdimg.com/static/superpage/js/superbase_ad5de58e.js"></script><script>
moon5284 2011-09-26
  • 打赏
  • 举报
回复
为了更形象的描述问题:
定义一个String text :
<a class=status1 id=s_more_feed_link href="#" onclick="return false;">更多新鲜事...</a><div class=status2>新鲜事读取中...</div><div class=status3>没有更多新鲜事</div><div class=status4>这里展现您在空间、贴吧的好友新鲜事。去<a target=_blank href="http://hi.baidu.com/sys/checkuser/moon5284/3">百度空间</a>、<a target=_blank href=http://tieba.baidu.com>百度贴吧</a>关注好友吧。</div></div></div> </div></textarea></div>  <script>window.bsIsOp=1;</script>  </div><div style="margin-left:1px;" class=s-add-mods id=s_add_mods><a class=s-add-addico id=s_add_addico><span id=s_addico_span class=s-addico-span>添加服务</span></a><div class=s-parent-ico id=s_parent_ico><div class=s-add-shortcut id=s_add_shortcut><a id=s_shortcut_span class="s-shortcut-span s-shortcut-span-limg" onclick="S.Mod.addClick(1,'s_shortcut_span');" href="#shortcut">导航</a></div><div class=s-add-hithot id=s_add_hithot><a id=s_hithot_span class="s-hithot-span s-hithot-span-limg" onclick="S.Mod.addClick(6,'s_hithot_span');" href="#hithot">实时热点</a></div><div class=s-add-app id=s_add_app><a id=s_app_span class="s-app-span s-app-span-img" onclick="S.Mod.addClick(2,'s_app_span');" href="#app">应用</a></div><div class=s-add-news id=s_add_news><a id=s_news_span class="s-news-span s-news-span-img" onclick="S.Mod.addClick(3,'s_news_span');" href="#feed">新鲜事</a></div></div><input type=hidden value="1,6" name=aMods id=aMods></div></div></div><div id=bottom_container style="padding-top:40px;" class=bottom> <div class=bottom-line1 style="padding-bottom: 5px;"><a href=http://e.baidu.com/?refer=888>加入百度推广</a> | <a href=http://top.baidu.com>搜索风云榜</a> | <a href=http://home.baidu.com>关于百度</a> | <a href=http://ir.baidu.com>About Baidu</a> | <a href=http://dev.baidu.com/home/index.html target=_blank>加入开放首页</a></div><div class=bottom-line2>©2011 Baidu <a href=/duty/>使用百度前必读</a> <a href=http://www.miibeian.gov.cn target=_blank>京ICP证030173号</a> <em class=s-bottom-copyright>    </em></div></div><div id=s_tips class=tip></div><input type=hidden id=bsToken name=bsToken value="7475a0857a322d6fda8327ddfa77af34"><input type=hidden id=appToken name=appToken value="08b4ffa9e28b79f9506cbe7ee31b354b"><input type=hidden id=appKey name=appKey value="5r7SmiUici27lVfVBep1K7BA"><script>wpo.bstart1=wpo.bstart2=new Date*1;</script><script type="text/javascript" src="http://su.bdimg.com/static/superpage/js/superbase_ad5de58e.js"></script><script>


将text中<a href=http://www.miibeian.gov.cn target=_blank>京ICP证030173号</a>中的“京ICP证030173号”备案信息提取出来,注意提取之前不知道备案信息是多少,知道了还提取个毛啊!
moon5284 2011-09-26
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 yanjinye 的回复:]
java中也要截取字符串的方法啊!
C#方法转换成java方法???
[/Quote]
阁下上代码呀,引用网友一句经典:You say a JB without a code...
随风醉舞 2011-09-26
  • 打赏
  • 举报
回复
java中也要截取字符串的方法啊!
C#方法转换成java方法???

62,615

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧