</div><!--tabcon end--> <div class="mc tabcon hide">                    <table cellpadding="0" cellspacing="1" width="100%" border="0" class="Ptable">
<tr><th class="tdTitle" colspan="2">主体</th><tr><tr><td class="tdTitle">品牌</td><td>诺基亚(Nokia)</td></tr><tr><td class="tdTitle">型号</td><td>5233</td></tr><tr><td class="tdTitle">颜色</td><td>黑色</td></tr><tr><td class="tdTitle">上市时间</td><td>2010年</td></tr><tr><td class="tdTitle">外观设计</td><td>直板</td></tr><tr><td class="tdTitle">视频通话</td><td>不支持</td></tr><tr><td class="tdTitle">操作系统</td><td>Symbian S60</td></tr><tr><td class="tdTitle">智能机</td><td>是</td></tr><tr><td class="tdTitle">CPU型号</td><td>ARM11</td></tr><tr><td class="tdTitle">CPU频率</td><td>434MHz</td></tr><tr><td class="tdTitle">键盘类型</td><td>虚拟QWERTY键盘</td></tr><tr><td class="tdTitle">输入方式</td><td>手写</td></tr><tr><th class="tdTitle" colspan="2">网络</th><tr><tr><td class="tdTitle">网络制式</td><td>GSM</td></tr><tr><td class="tdTitle">网络频率</td><td>GSM 850/900/1800/1900</td></tr><tr><td class="tdTitle">数据业务</td><td>GPRS,EDGE</td></tr><tr><td class="tdTitle">浏览器</td><td>支持</td></tr><tr><th class="tdTitle" colspan="2">存储</th><tr><tr><td class="tdTitle">机身内存</td><td>256MB ROM+128MB RAM</td></tr><tr><td class="tdTitle">可用空间</td><td>70MB </td></tr><tr><td class="tdTitle">储存卡类型</td><td>Micro SD</td></tr><tr><td class="tdTitle">最大存储扩展</td><td>16GB</td></tr><tr><td class="tdTitle">热插拔</td><td>支持</td></tr><tr><th class="tdTitle" colspan="2">显示</th><tr><tr><td class="tdTitle">屏幕尺寸</td><td>3.2英寸 </td></tr><tr><td class="tdTitle">屏幕色彩</td><td>1600万色</td></tr><tr><td class="tdTitle">屏幕材质</td><td>TFT</td></tr><tr><td class="tdTitle">分辨率</td><td>640 x 360 像素</td></tr><tr><td class="tdTitle">触摸屏</td><td>电阻屏</td></tr><tr><td class="tdTitle">重力感应</td><td>支持</td></tr><tr><td class="tdTitle">距离感应</td><td>支持</td></tr><tr><th class="tdTitle" colspan="2">娱乐功能</th><tr><tr><td class="tdTitle">音乐播放</td><td>MP3/AAC/eACC+/MP4/WMA等格式<br/></td></tr><tr><td class="tdTitle">视频播放</td><td>MP4/3GP/MPEG-4等格式</td></tr><tr><td class="tdTitle">JAVA</td><td>支持</td></tr><tr><td class="tdTitle">电子书</td><td>支持</td></tr><tr><td class="tdTitle">收音机</td><td>支持</td></tr><tr><td class="tdTitle">电视播放</td><td>不支持</td></tr><tr><td class="tdTitle">彩信功能</td><td>支持</td></tr><tr><td class="tdTitle">铃音类型</td><td>64和铉</td></tr><tr><th class="tdTitle" colspan="2">摄像功能</th><tr><tr><td class="tdTitle">摄像头</td><td>200万<br/></td></tr><tr><td class="tdTitle">传感器类型</td><td>CMOS</td></tr><tr><td class="tdTitle">闪光灯</td><td>不支持</td></tr><tr><td class="tdTitle">视频拍摄</td><td>480p(640×480,30帧/秒)视频录制</td></tr><tr><td class="tdTitle">变焦模式</td><td>3倍</td></tr><tr><td class="tdTitle">拍摄模式</td><td>自动,夜间 </td></tr><tr><td class="tdTitle">拍摄场景</td><td>支持</td></tr><tr><td class="tdTitle">照片分辨率</td><td>最大支持1600×1200像素照片拍摄</td></tr><tr><td class="tdTitle">其他性能</td><td>白平衡,曝光测量,相片编辑器</td></tr><tr><th class="tdTitle" colspan="2">传输功能</th><tr><tr><td class="tdTitle">GPS</td><td>不支持</td></tr><tr><td class="tdTitle">Wi-Fi</td><td>不支持</td></tr><tr><td class="tdTitle">蓝牙</td><td>支持</td></tr><tr><td class="tdTitle">PC数据同步</td><td>支持</td></tr><tr><th class="tdTitle" colspan="2">个人助理</th><tr><tr><td class="tdTitle">Office</td><td>支持</td></tr><tr><td class="tdTitle">电子邮件</td><td>支持</td></tr><tr><td class="tdTitle">计算器</td><td>支持</td></tr><tr><td class="tdTitle">闹钟</td><td>关机闹钟</td></tr><tr><td class="tdTitle">录音</td><td>支持</td></tr><tr><td class="tdTitle">通话录音</td><td>支持</td></tr><tr><td class="tdTitle">后台操作</td><td>支持</td></tr><tr><td class="tdTitle">后台QQ</td><td>支持</td></tr><tr><td class="tdTitle">炒股软件</td><td>支持</td></tr><tr><th class="tdTitle" colspan="2">其他</th><tr><tr><td class="tdTitle">电池型号</td><td>BL-5J</td></tr><tr><td class="tdTitle">电池类型</td><td>锂电池</td></tr><tr><td class="tdTitle">电池容量</td><td>1320 毫安</td></tr><tr><td class="tdTitle">理论通话时间</td><td>648分钟</td></tr><tr><td class="tdTitle">理论待机时间</td><td>455小时</td></tr><tr><td class="tdTitle">数据线</td><td>Micro USB v2.0</td></tr><tr><td class="tdTitle">耳机</td><td>3.5mm</td></tr><tr><td class="tdTitle">机身尺寸</td><td>111 x 51.7 x 14.5/15.5 毫米</td></tr><tr><td class="tdTitle">机身重量</td><td>113 克 (不含触控笔) <br/>- 115 克 (含触控笔)</td></tr></table>
如上面这段html源代码,是描述一架手机的规格参数,我想用正则表达式匹配出参数的名称
我在java中用下面这句表达式,可以正确匹配
String s1="(?<=<td class=(\\u0022)tdTitle(\\u0022)>)\\w+(?=</td>)"
但是问题就是:它会一下子把所有的参数名称同时匹配出来,我能一次只匹配一个,然后存在数组中吗??
求各位帮帮忙!!急!

解决方案 »

  1.   

    用java.util.regx下的类
    Pattern pat=Pattern.compile("");
    Matcher mcr=pat.macher(html);
    while(mcr.find()){
    mcr.group(0);
    mcr.group(1);
    }
      

  2.   


    谢谢!!那请问.group(0),.group(1)是什么意思?
      

  3.   

    group(int group) 
              返回在以前匹配操作期间由给定组捕获的输入子序列。
    matches() 
              尝试将整个区域与模式匹配。public boolean find()尝试查找与该模式匹配的输入序列的下一个子序列。 
    此方法从匹配器区域的开头开始,如果该方法的前一次调用成功了并且从那时开始匹配器没有被重置,则从以前匹配操作没有匹配的第一个字符开始。 如果匹配成功,则可以通过 start、end 和 group 方法获取更多信息。
      

  4.   


    谢谢!!现在比较急,能麻烦根据我的问题写一小段代码我学习吗?我学的group(0)、group(1),是跟mather里的括号有关,比如A(B(C))D,那么group(0)就是ABCD,group(1)就是BC。我学的比较基础,所以不知道怎么修改成我需要的,麻烦帮个忙!!
      

  5.   

    Pattern pat=Pattern.compile("(?i)<td\\sclass=\"tdTitle\">(.*?)</td>");
    Matcher mcr=pat.matcher(html);
    while(mcr.find()){
    System.out.println(mcr.group(1));
    }
      

  6.   

    (?i)表示不区分大小写 所以 html里如果是<TD, Sclass都能匹配到的 .在正则里表示除了行结束符以外的所有字符 可以理解为 回车符 如果要求严密的话 这里应该是 ((?:.|\\s)*) (?:)表示不捕获分组 ()表示组 也就是后面的group(1) 第几个( 就是group(几) 不捕获了以后 此组就跳过啦 效率也高点