各位 高手:
 有这样一个 问题 ... 
html 里 有 类似
<td> aa </td>  <td> bb </td>  <td>  11125  </td>...
的 代码
我想通过 正则表达式 将 所有 <td> </td> 中间 的 值 得到..
请问 这个功能 用 java 代码 该 如何 实现呢.
多谢 啊...

解决方案 »

  1.   

    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
    <title>无标题文档</title>
    <script language="javascript1.3">
    function fangfa()
    {
    var arr=document.getElementsByTagName("td");
    var str="";

    for (var i=0;i<arr.length;i++)
    {
    str+=arr[i].innerHTML+"\n";
    }

    alert(str);

    }
    </script>
    </head><body onLoad="fangfa()">
    <table width="200" border="1">
      <tr>
        <td>df</td>
        <td>asdf</td>
        <td>fdsa</td>
      </tr>
      <tr>
        <td>dfa</td>
        <td>fdsa</td>
        <td>das</td>
      </tr>
      <tr>
        <td>x</td>
        <td>vqwer</td>
        <td>jf</td>
      </tr>
      <tr>
        <td>ew</td>
        <td>ltiu</td>
        <td>uyi,gj</td>
      </tr>
      <tr>
        <td>fw</td>
        <td>vvvvv</td>
        <td>dsaf</td>
      </tr>
    </table>
    </body>
    </html>应该是这样吧 我是新手 呵呵
      

  2.   

    <script language=javascript>
    var str="<td> aa </td>  <td> bb </td>  <td>  11125  </td>..."
    var result=new Array()
    str.replace(/<td[^>]*>(.+?)<\/td>/ig,function(a,b){result.push(b)})
    alert(result)
    </script>
      

  3.   

    JAVA的方法
    引的包import java.util.regex.Matcher;
    import java.util.regex.Pattern;
    下面是代码
    String regEx = "<td[^>]*>(.+?)</td>";
           String str = "<td> aa </td>  <td> bb </td>  <td>  11125  </td>...";
           Pattern p = Pattern.compile(regEx);
           Matcher m = p.matcher(str);
           while (m.find()) {
            System.out.println(m.group(1));
           }
      

  4.   

    /<td[^>]*>(.+?)<\/td>/ig这个ig是啥意思?
      

  5.   

    在 JScript 表达式中,正则表达式后面的全局标志 ('g') 表示该表达式将用来在输入字符串中查找尽可能多的匹配。大小写敏感性由表达式结束处的大小写敏感性标记 ('i') 指定。多行标记指定可能出现在换行符的两端的潜在匹配。对 VBScript 而言,在表达式中不能设置各种标记,但必须使用 RegExp 对象的属性来显式设置。