如何取红色字体部分数据
<div class="fl">
<div class="bm">
  <div class="bm_h">
  <a href="forum.php?viewgid=0&mobile=yes">数据A</a> </div>
  <div class="bm_c add">
  <a href="forum.php?mod=forumdisplay&amp;fid=86&mobile=yes" >1</a> <font class="xg1">(3)</font> </div>
  <div class="bm_c even">
  <a href="forum.php?mod=forumdisplay&amp;fid=23&mobile=yes" >2</a> <font class="xg1">(2474)</font> </div>
  <div class="bm_c add">
  <a href="forum.php?mod=forumdisplay&amp;fid=95&mobile=yes" >3</a> <font class="xg1">(83)</font> </div>
  </div>
 </div>
<div class="fl">
 <div class="bm">
  <div class="bm_h">
  <a href="forum.php?viewgid=1&mobile=yes">数据B</a> </div>
  </div>
 </div>
 <div class="fl">
 <div class="bm">
  <div class="bm_h">
  <a href="forum.php?viewgid=3923&mobile=yes">数据C</a> </div>
  </div>
 </div>
<div class="box">

解决方案 »

  1.   


    <div class="bm_c add">
    是不变得
      

  2.   


    百度 jsonp 或者htmlparse  推荐使用jsonp 后者已经停止更新
    按你所需要的标签id去提取就行了
      

  3.   

    <div class="bm_c add"> 名字不会变
      

  4.   

    这是提取相应标签内文本的写法 仅供参考//提取HTML文件的文本内容
    private static String getDocument(File html) {
    String text = "";
    try {
    //设置编码集
    // org.jsoup.nodes.Document doc = Jsoup.parse(html, "UTF-8");
    org.jsoup.nodes.Document doc = Jsoup.parse(html,"GBK"); //提取标题信息
    Elements title = doc.select("title");
    for (org.jsoup.nodes.Element link : title) {
    text += link.text() + " ";
    }

    //提取table中的文本信息
    Elements links = doc.select("table");
    for (org.jsoup.nodes.Element link : links) {
    text += link.text() + " ";
    }

    //提取div中的文本信息
    Elements divs = doc.select("div[class=post]");
    for (org.jsoup.nodes.Element link : divs) {
    text += link.text() + " ";
    }
    } catch (IOException e) {
    e.printStackTrace();
    } return text;
    }
      

  5.   

    jsoup
    String htmlcontents = ".............";
    Document doc = Jsoup.parseBodyFragment(htmlcontents);
    Elements elements = doc.select("div.bm_c");
    for(Element element: elements){}
      

  6.   

    NND,另外个帖子不给你说方法了么。
      

  7.   

    String s ="<div class=\"fl\">"+
    "<div class=\"bm\">"+
    " <div class=\"bm_h\">"+
    "  <a href=\"forum.php?viewgid=0&mobile=yes\">数据A</a> </div>"+
    " <div class=\"bm_c add\">"+
    "<a href=\"forum.php?mod=forumdisplay&amp;fid=86&mobile=yes\" >1</a> <font class=\"xg1\">(3)</font> </div>"+
    "<div class=\"bm_c even\">"+
    "<a href=\"forum.php?mod=forumdisplay&amp;fid=23&mobile=yes\" >2</a> <font class=\"xg1\">(2474)</font> </div>"+
    "<div class=\"bm_c add\">"+
    "<a href=\"forum.php?mod=forumdisplay&amp;fid=95&mobile=yes\" >3</a> <font class=\"xg1\">(83)</font> </div> </div>"+
    " </div>"+
    "<div class=\"fl\">"+
    " <div class=\"bm\">"+
    "  <div class=\"bm_h\">"+
    "  <a href=\"forum.php?viewgid=1&mobile=yes\">数据B</a> </div>"+
    "  </div>"+
    " </div>"+
    " <div class=\"fl\">"+
    " <div class=\"bm\">"+
    "  <div class=\"bm_h\">"+
    "  <a href=\"forum.php?viewgid=3923&mobile=yes\">数据C</a> </div>"+
    "  </div>"+
    " </div>";
    Pattern p = Pattern.compile("<div class=\"bm_c (\\w)*\">(.*</font>\\s*)</div>");
    Matcher m = p.matcher(s);
    while(m.find()){
    System.out.println(m.group(0));
    }
      

  8.   

    (1)截取以<div class="bm_c add">开头,中间是任意内容,然后又是一个<div class="bm_c add">的内容?
    (2)得到一个数组还是一个串?
      

  9.   


    你好,上面字符串中</font> 可能没有怎么办 
      

  10.   

    不怎么会正则。。
    下面列出在抓取网页中常用的正则规则,其中$content代表网页内容,$tmparray为抓取的结果存储数组。 抓取HTML中CSS里背景图片地址 
    preg_match_all('/(background|background-image):url\([\"\']?([^\)]+)[\"\']?\)/i', $content, $tmparray);
     
    抓取HTML中图片标签中的地址 
    preg_match_all('/<img[^>]+src=[\"\']{1}([^\"\'\s]+)[\"\']{1}[^>]+>/i', $content, $tmparray);
     
    抓取HTML中图片背景地址 preg_match_all('/background=[\"\']?([^\"\'\s>]+)[\"\']?/i', $content, $tmparray);
     
    抓取HTML中的Flash地址 preg_match_all('/<embed[^>]+src=[\"\']{1}(([^\"\'\s]+)\.swf)[\"\']{1}[^>]+>/i', $content, $tmparray);
     
    抓取HTML中的iframe的链接地址 
    preg_match_all('/<iframe[^>]+src=[\"\']?([\w\-\/\.]+)[\"\']?[^>]+><\/iframe>/i', $content, $tmparray);
     
    抓取HTML中的超链接地址 
    preg_match_all('/<a[^>]+href=[\"\']{1}([^>\"\']+)[\"\']?[^>]+>([^<]+)<\/a>/i', $content, $iframeurlarray);
     
      

  11.   

    13楼的只是PHP的正则,“字符串中</font> 没有怎么办”,其实这涉及到正则的贪婪、非贪婪模式。默认是贪婪的,尽可能匹配多个,这里只匹配最近的</div>就行,用非贪婪模式。前面str是我复制两三行作为测试数据的,后进来发现有人整段复制了,就把前面的注释了,JAVA整段文本作字符串真麻烦!大家有无好的方法?import java.util.regex.Matcher;
    import java.util.regex.Pattern;
    // import java.util.*;
    public class Test{
       public static void main(String args[]){
    String str;
    // str="数据A</a> </div><div class=\"bm_c add\"><a href=\"forum.php?mod=forumdisplay&amp;fid=86&mobile=yes(3)>1</a></font> </div> ";
    // str+="<div class=\"bm_c even\"><a href=\"forum.php?mod=forumdisplay&amp;fid=23&mobile=yes(3)>2</a></font> </div>bb.....";
    str="<div class=\"fl\">"+
                        "<div class=\"bm\">"+
                        " <div class=\"bm_h\">"+
                        "  <a href=\"forum.php?viewgid=0&mobile=yes\">数据A</a> </div>"+
                        " <div class=\"bm_c add\">"+
                        "<a href=\"forum.php?mod=forumdisplay&amp;fid=86&mobile=yes\" >1</a> <font class=\"xg1\">(3)</font> </div>"+
                        "<div class=\"bm_c even\">"+
                        "<a href=\"forum.php?mod=forumdisplay&amp;fid=23&mobile=yes\" >2</a> <font class=\"xg1\">(2474)</font> </div>"+
                        "<div class=\"bm_c add\">"+
                        "<a href=\"forum.php?mod=forumdisplay&amp;fid=95&mobile=yes\" >3</a> <font class=\"xg1\">(83)</font> </div> </div>"+
                        " </div>"+
                        "<div class=\"fl\">"+
                        " <div class=\"bm\">"+
                        "  <div class=\"bm_h\">"+
                        "  <a href=\"forum.php?viewgid=1&mobile=yes\">数据B</a> </div>"+
                        "  </div>"+
                        " </div>"+
                        " <div class=\"fl\">"+
                        " <div class=\"bm\">"+
                        "  <div class=\"bm_h\">"+
                        "  <a href=\"forum.php?viewgid=3923&mobile=yes\">数据C</a> </div>"+
                        "  </div>"+
                        " </div>";
    String reg="<div class=\"bm_c \\w+\">.+?</div>";
    Pattern p=Pattern.compile(reg);
    Matcher m=p.matcher(str);
    while(m.find()){
    System.out.println(m.group());
    }
      }
    }“.+</div>“匹配到最后一个</div>,”.+?</div>“加问号,匹配到最近一个</div>。