在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中如何使用正则实现以上功能(在字符串中查找字符串)?

解决方案 »

  1.   

    java中也要截取字符串的方法啊!
    C#方法转换成java方法???
      

  2.   

    阁下上代码呀,引用网友一句经典:You say a JB without a code...
      

  3.   

    为了更形象的描述问题:
    定义一个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>&nbsp;&nbsp;&nbsp;&nbsp;</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号”备案信息提取出来,注意提取之前不知道备案信息是多少,知道了还提取个毛啊!
      

  4.   

    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>&nbsp;&nbsp;&nbsp;&nbsp;</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>
      

  5.   

    请问是否只提取备案信息?是否备案链接地址总是包含“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));
    }