<span><a href="/f/good?kw=%BD%B4%CB%AE%B5%B3&cid=3">吧务公开</a></span>
<span><a href="/f/good?kw=%BD%B4%CB%AE%B5%B3&cid=1">世间百态</a></span>
<span><a href="/f/good?kw=%BD%B4%CB%AE%B5%B3&cid=6">名人风采</a></span>
<span><a href="/f/good?kw=%BD%B4%CB%AE%B5%B3&cid=5">废材资源</a></span>
<span><a href="/f/good?kw=%BD%B4%CB%AE%B5%B3&cid=4">无聊蛋疼</a></span>
<span><a href="/f/good?kw=%BD%B4%CB%AE%B5%B3&cid=2">酱水原创</a></span>
<span><a href="/f/good?kw=%BD%B4%CB%AE%B5%B3&cid=7">围观极品</a></span>
<span><a href="/f/good?kw=%BD%B4%CB%AE%B5%B3&cid=8">历史风云</a></span>我想抓取这<a href="XXXX>和</a>之间的文字 应该怎么写正则表达式好?谢谢了

解决方案 »

  1.   

    .....用得到因为我要匹配的是整个网页的String
      

  2.   

        public static void main(String[] args) {
          String s = "<span><a href=\"/f/good?kw=%BD%B4%CB%AE%B5%B3&cid=3\">吧务公开</a></span>";  
          String reg = "<span><a\\s+href=(\".*\"|'.*')\\s*>(.*)</a></span>";
          System.out.println(s.replaceAll(reg, "$2"));
        }
      

  3.   

    try...String pattern = "(?is)<a[^>]*>(.*?)</a>";
    Matcher m = Pattern.compile(pattern).matcher(yourStr);
    while(m.find())
    {
    System.out.println(m.group(1));
    }
      

  4.   


    import java.util.regex.Matcher;
    import java.util.regex.Pattern;public class TextCatchHref { public static void main(String[] args) {
         
    String str="<span><a href=\"/f/good?kw=%BD%B4%CB%AE%B5%B3&cid=3\">吧务公开</a></span>"+"/r"+
               "<span><a href=\"/f/good?kw=%BD%B4%CB%AE%B5%B3&cid=1\">世间百态</a></span>"+"/r"+
               "<span><a href=\"/f/good?kw=%BD%B4%CB%AE%B5%B3&cid=6\">名人风采</a></span>"+"/r"+
               "<span><a href=\"/f/good?kw=%BD%B4%CB%AE%B5%B3&cid=5\">废材资源</a></span>"+"/r"+
               "<span><a href=\"/f/good?kw=%BD%B4%CB%AE%B5%B3&cid=4\">无聊蛋疼</a></span>"+"/r"+
               "<span><a href=\"/f/good?kw=%BD%B4%CB%AE%B5%B3&cid=2\">酱水原创</a></span>"+"/r"+
               "<span><a href=\"/f/good?kw=%BD%B4%CB%AE%B5%B3&cid=7\">围观极品</a></span>"+"/r"+
               "<span><a href=\"/f/good?kw=%BD%B4%CB%AE%B5%B3&cid=8\">历史风云</a></span>";
    Matcher m=Pattern.compile("(?is)<a\\s+href\\s*=\\s*\"(.*?)\">(.*?)</a>").matcher(str);
    while(m.find()) {
    System.out.println(m.group(2));
    }
    }}吧务公开
    世间百态
    名人风采
    废材资源
    无聊蛋疼
    酱水原创
    围观极品
    历史风云 注意结贴