需求:1 得到有用的TABLE的TD里面的值  显示成:上市时间@2003你8月@手机制式@CDMA  后面的接着。。
 注意:需要解析的字符串不都是有用的TABLE
  ================解析对象有点厂分几部分贴出================
<!--基本功能--开始-->

<!--基本功能--标题--开始-->
<table width="98%" cellpadding="0" cellspacing="0">
<tr>
<td width="20" height="22" style="padding:2px 0px 0px 0px;">
<img src="/Mobile/Image/icon_circle.gif" width="16" height="16" border="0" /></td>
<td height="22" style="padding:4px 0px 0px 0px;">
<font class='dataTitleBlackFont'>基本功能</font></td>
</tr>
</table>
<table width="99%" cellpadding="0" cellspacing="0">
<tr>
<td width="154" bgcolor="#6DCDFD"><img width="0" height="1" /></td>
<td bgcolor="#cccccc"><img width="0" height="1" /></td>
</tr>
<tr><td colspan="2"><img width="0" height="4" /></td></tr>
</table>
<!--基本功能--标题--结束-->

<!--基本功能--字段--开始-->
<table width='98%' cellpadding='1' cellspacing='0'>
<tr><td class='dataItemTd'>『<a href='/Mobile/Dictionary/1.htm' class='dataDictionaryLink' target='_blank'>CDMA手机</a>』</td><td class='dataItemTd'>『<a href='/Mobile/Dictionary/13.htm' class='dataDictionaryLink' target='_blank'>可选铃声</a>』</td><td class='dataItemTd'>『<a href='/Mobile/Dictionary/16.htm' class='dataDictionaryLink' target='_blank'>图形菜单</a>』</td><td class='dataItemTd'>『<a href='/Mobile/Dictionary/18.htm' class='dataDictionaryLink' target='_blank'>待机图片</a>』</td><td class='dataItemTd'>『<a href='/Mobile/Dictionary/23.htm' class='dataDictionaryLink' target='_blank'>免提通话</a>』</td></tr><tr></tr>
</table>
<!--基本功能--字段--结束-->

<!--基本功能--详细介绍--开始-->
<table width='604' cellpadding='2' cellspacing='0'>
<tr><td colspan="2"><img width="0" height="8" /></td></tr>

<tr>
<td class="dataLeft1Td" valign="top"><a href='/Mobile/Dictionary/5.htm' class='dataDictionaryLink' target='_blank'>上市日期</a>:</td>
<td class="dataRight1Td" valign="top">2003年8月</td>
</tr>

<tr>
<td class="dataLeft1Td" valign="top"><a href='/Mobile/Dictionary/6.htm' class='dataDictionaryLink' target='_blank'>手机制式</a>:</td>
<td class="dataRight1Td" valign="top">CDMA</td>
</tr>

<tr>
<td class="dataLeft1Td" valign="top"><a href='/Mobile/Dictionary/7.htm' class='dataDictionaryLink' target='_blank'>支持频段</a>:</td>
<td class="dataRight1Td" valign="top">|CDMA1x-2000|</td>
</tr>

<tr>
<td class="dataLeft1Td" valign="top"><a href='/Mobile/Dictionary/9.htm' class='dataDictionaryLink' target='_blank'>理论通话时间</a>:</td>
<td class="dataRight1Td" valign="top">80-120分钟</td>
</tr>

<tr>
<td class="dataLeft1Td" valign="top"><a href='/Mobile/Dictionary/10.htm' class='dataDictionaryLink' target='_blank'>理论待机时间</a>:</td>
<td class="dataRight1Td" valign="top">60-100小时</td>
</tr>

<tr>
<td class="dataLeft1Td" valign="top"><a href='/Mobile/Dictionary/11.htm' class='dataDictionaryLink' target='_blank'>标准配置</a>:</td>
<td class="dataRight1Td" valign="top">两锂电池(600mAh)、旅行充电器、充电座、外置摄像头、戒指耳机、铝盒、铝制包装箱一个</td>
</tr>

<tr>
<td class="dataLeft1Td" valign="top"><a href='/Mobile/Dictionary/23.htm' class='dataDictionaryLink' target='_blank'>免提通话</a>:</td>
<td class="dataRight1Td" valign="top">支持</td>
</tr>

<tr><td colspan="2"><img width="0" height="8" /></td></tr>
</table>
<!--基本功能--详细介绍--结束--> <!--基本功能--结束-->

解决方案 »

  1.   

    ============第二部分==================
    <!--外观设计--开始-->

    <!--外观设计--标题--开始-->
    <table width="98%" cellpadding="0" cellspacing="0">
    <tr>
    <td width="20" height="22" style="padding:2px 0px 0px 0px;">
    <img src="/Mobile/Image/icon_circle.gif" width="16" height="16" border="0" /></td>
    <td height="22" style="padding:4px 0px 0px 0px;">
    <font class='dataTitleBlackFont'>外观设计</font></td>
    </tr>
    </table>
    <table width="99%" cellpadding="0" cellspacing="0">
    <tr>
    <td width="154" bgcolor="#6DCDFD"><img width="0" height="1" /></td>
    <td bgcolor="#cccccc"><img width="0" height="1" /></td>
    </tr>
    <tr><td colspan="2"><img width="0" height="4" /></td></tr>
    </table>
    <!--外观设计--标题--结束-->
    <!--外观设计--字段--开始-->
    <table width='98%' cellpadding='1' cellspacing='0'>
    <tr><td class='dataItemTd'>『<a href='/Mobile/Dictionary/25.htm' class='dataDictionaryLink' target='_blank'>手表外型手机</a>』</td><td class='dataItemTd'>『<a href='/Mobile/Dictionary/27.htm' class='dataDictionaryLink' target='_blank'>外置天线</a>』</td><td class='dataItemTd'>&nbsp;</td><td class='dataItemTd'>&nbsp;</td><td class='dataItemTd'>&nbsp;</td></tr>
    </table>
    <!--高级功能--字段--结束-->

    <!--高级功能--详细介绍--开始-->
    <table width="604" cellpadding="2" cellspacing="0">
    <tr><td colspan="2"><img width="0" height="8" /></td></tr>

    <tr>
    <td class="dataLeft1Td" valign="top"><a href='/Mobile/Dictionary/25.htm' class='dataDictionaryLink' target='_blank'>外观设计</a>:</td>
    <td class="dataRight1Td" valign="top">手表外型</td>
    </tr>

    <tr>
    <td class="dataLeft1Td" valign="top"><a href='/Mobile/Dictionary/27.htm' class='dataDictionaryLink' target='_blank'>产品天线</a>:</td>
    <td class="dataRight1Td" valign="top">外置</td>
    </tr>

    <tr>
    <td class="dataLeft1Td" valign="top"><a href='/Mobile/Dictionary/30.htm' class='dataDictionaryLink' target='_blank'>机身颜色</a>:</td>
    <td class="dataRight1Td" valign="top">亮丽黑、魔幻蓝</td>
    </tr>

    <tr>
    <td class="dataLeft1Td" valign="top"><a href='/Mobile/Dictionary/28.htm' class='dataDictionaryLink' target='_blank'>产品尺寸</a>:</td>
    <td class="dataRight1Td" valign="top">77.5×33.8×17mm</td>
    </tr>

    <tr>
    <td class="dataLeft1Td" valign="top"><a href='/Mobile/Dictionary/29.htm' class='dataDictionaryLink' target='_blank'>手机重量</a>:</td>
    <td class="dataRight1Td" valign="top">95克</td>
    </tr>

    <tr>
    <td class="dataLeft1Td" valign="top"><a href='/Mobile/Dictionary/30.htm' class='dataDictionaryLink' target='_blank'>可选颜色</a>:</td>
    <td class="dataRight1Td" valign="top">亮丽黑、魔幻蓝</td>
    </tr>

    <tr><td colspan="2"><img width="0" height="8" /></td></tr>
    </table>
    <!--外观设计--详细介绍--结束--> <!--外观设计--结束-->

    <!--屏幕参数--开始-->
    <!--屏幕参数--标题--开始-->
    <table width="98%" cellpadding="0" cellspacing="0">
    <tr>
    <td width="20" height="22" style="padding:2px 0px 0px 0px;">
    <img src="/Mobile/Image/icon_circle.gif" width="16" height="16" border="0" /></td>
    <td height="22" style="padding:4px 0px 0px 0px;">
    <font class='dataTitleBlackFont'>屏幕参数</font></td>
    </tr>
    </table>
    <table width="99%" cellpadding="0" cellspacing="0">
    <tr>
    <td width="154" bgcolor="#6DCDFD"><img width="0" height="1" /></td>
    <td bgcolor="#cccccc"><img width="0" height="1" /></td>
    </tr>
    <tr><td colspan="2"><img width="0" height="4" /></td></tr>
    </table>
    <!--屏幕参数--标题--结束-->

    <!--屏幕参数--字段--开始-->
    <table width='98%' cellpadding='1' cellspacing='0'>
    <tr><td class='dataItemTd'>『<a href='/Mobile/Dictionary/34.htm' class='dataDictionaryLink' target='_blank'>STN屏</a>』</td><td class='dataItemTd'>&nbsp;</td><td class='dataItemTd'>&nbsp;</td><td class='dataItemTd'>&nbsp;</td><td class='dataItemTd'>&nbsp;</td></tr>
    </table>
    <!--屏幕参数--字段--结束-->

    <!--屏幕参数--详细介绍--开始-->
    <table width="98%" cellpadding="2" cellspacing="0">
    <tr><td colspan="2"><img width="0" height="8" /></td></tr>
    <tr><td colspan="2">
    <table width="100%" cellpadding="0" cellspacing="0">

    <tr>
    <td class="dataLeft3Td" valign="top"><a href='/Mobile/Dictionary/34.htm' class='dataDictionaryLink' target='_blank'>屏幕颜色</a>:</td>
    <td class="dataRight3Td" valign="top">256色</td>
    </tr>

    <tr>
    <td class="dataLeft1Td" valign="top"><a href='/Mobile/Dictionary/35.htm' class='dataDictionaryLink' target='_blank'>屏幕类型</a>:</td>
    <td class="dataRight1Td" valign="top">STN</td>
    </tr>

    <tr>
    <td class="dataLeft1Td" valign="top">详细说明:</td>
    <td class="dataRight1Td" valign="top">永不磨损的高科技水晶屏幕</td>
    </tr>

    </table>
    </td></tr>

    <tr><td colspan="2"><img width="0" height="8" /></td></tr>
    </table>
    <!--屏幕参数--详细介绍--结束-->
      

  2.   

    解析的字符串比较长 所以要求有一定的效率(把效率得考虑进去)
    ======================第三部分=======================
    <!--屏幕参数--结束-->

    <!--通讯功能--开始-->

    <!--通讯功能--标题--开始-->
    <table width="98%" cellpadding="0" cellspacing="0">
    <tr>
    <td width="20" height="22" style="padding:2px 0px 0px 0px;">
    <img src="/Mobile/Image/icon_circle.gif" width="16" height="16" border="0" /></td>
    <td height="22" style="padding:4px 0px 0px 0px;">
    <font class='dataTitleBlackFont'>通讯功能</font></td>
    </tr>
    </table>
    <table width="99%" cellpadding="0" cellspacing="0">
    <tr>
    <td width="154" bgcolor="#6DCDFD"><img width="0" height="1" /></td>
    <td bgcolor="#cccccc"><img width="0" height="1" /></td>
    </tr>
    <tr><td colspan="2"><img width="0" height="4" /></td></tr>
    </table>
    <!--通讯功能--标题--结束-->
    <!--通讯功能--字段--开始-->
    <table width='98%' cellpadding='1' cellspacing='0'>
    <tr><td class='dataItemTd'>『<a href='/Mobile/Dictionary/40.htm' class='dataDictionaryLink' target='_blank'>输入法</a>』</td><td class='dataItemTd'>『<a href='/Mobile/Dictionary/41.htm' class='dataDictionaryLink' target='_blank'>短信功能</a>』</td><td class='dataItemTd'>『<a href='/Mobile/Dictionary/45.htm' class='dataDictionaryLink' target='_blank'>话机通讯录</a>』</td><td class='dataItemTd'>『<a href='/Mobile/Dictionary/47.htm' class='dataDictionaryLink' target='_blank'>通话记录</a>』</td><td class='dataItemTd'>『<a href='/Mobile/Dictionary/48.htm' class='dataDictionaryLink' target='_blank'>留言应答</a>』</td></tr><tr><td class='dataItemTd'>『<a href='/Mobile/Dictionary/49.htm' class='dataDictionaryLink' target='_blank'>语音拨号</a>』</td><td class='dataItemTd'>&nbsp;</td><td class='dataItemTd'>&nbsp;</td><td class='dataItemTd'>&nbsp;</td><td class='dataItemTd'>&nbsp;</td></tr>
    </table>
    <!--高级功能--字段--结束-->

    <!--高级功能--详细介绍--开始-->
    <table width="604" cellpadding="2" cellspacing="0">
    <tr><td colspan="2"><img width="0" height="8" /></td></tr>

    <tr>
    <td class="dataLeft1Td" valign="top"><a href='/Mobile/Dictionary/40.htm' class='dataDictionaryLink' target='_blank'>输入法</a>:</td>
    <td class="dataRight1Td" valign="top">中文输入法;</td>
    </tr>

    <tr>
    <td class="dataLeft1Td" valign="top"><a href='/Mobile/Dictionary/45.htm' class='dataDictionaryLink' target='_blank'>话机通讯录</a>:</td>
    <td class="dataRight1Td" valign="top">支持</td>
    </tr>

    <tr>
    <td class="dataLeft1Td" valign="top"><a href='/Mobile/Dictionary/47.htm' class='dataDictionaryLink' target='_blank'>通话记录</a>:</td>
    <td class="dataRight1Td" valign="top">支持</td>
    </tr>

    <tr>
    <td class="dataLeft1Td" valign="top"><a href='/Mobile/Dictionary/48.htm' class='dataDictionaryLink' target='_blank'>留言应答</a>:</td>
    <td class="dataRight1Td" valign="top">支持</td>
    </tr>

    <tr>
    <td class="dataLeft1Td" valign="top"><a href='/Mobile/Dictionary/49.htm' class='dataDictionaryLink' target='_blank'>语音拨号</a>:</td>
    <td class="dataRight1Td" valign="top">支持</td>
    </tr>

    <tr><td colspan="2"><img width="0" height="8" /></td></tr>
    </table>
    <!--通讯功能--详细介绍--结束--> <!--通讯功能--结束-->

    <!--拍照功能--开始-->

    <!--拍照功能--标题--开始-->
    <table width="98%" cellpadding="0" cellspacing="0">
    <tr>
    <td width="20" height="22" style="padding:2px 0px 0px 0px;">
    <img src="/Mobile/Image/icon_circle.gif" width="16" height="16" border="0" /></td>
    <td height="22" style="padding:4px 0px 0px 0px;">
    <font class='dataTitleBlackFont'>拍照功能</font></td>
    </tr>
    </table>
    <table width="99%" cellpadding="0" cellspacing="0">
    <tr>
    <td width="154" bgcolor="#6DCDFD"><img width="0" height="1" /></td>
    <td bgcolor="#cccccc"><img width="0" height="1" /></td>
    </tr>
    <tr><td colspan="2"><img width="0" height="4" /></td></tr>
    </table>
    <!--拍照功能--标题--结束-->

    <!--拍照功能--字段--开始-->
    <table width='98%' cellpadding='1' cellspacing='0'>
    <tr><td class='dataItemTd'>『<a href='/Mobile/Dictionary/54.htm' class='dataDictionaryLink' target='_blank'>外置</a>』</td><td class='dataItemTd'>&nbsp;</td><td class='dataItemTd'>&nbsp;</td><td class='dataItemTd'>&nbsp;</td><td class='dataItemTd'>&nbsp;</td></tr>
    </table>
    <!--高级功能--字段--结束-->

    <!--高级功能--详细介绍--开始-->
    <table width="604" cellpadding="2" cellspacing="0">
    <tr><td colspan="2"><img width="0" height="8" /></td></tr>

    <tr>
    <td class="dataLeft1Td" valign="top"><a href='/Mobile/Dictionary/54.htm' class='dataDictionaryLink' target='_blank'>摄像头位置</a>:</td>
    <td class="dataRight1Td" valign="top">外置</td>
    </tr>

    <tr>
    <td class="dataLeft1Td" valign="top"><a href='/Mobile/Dictionary/55.htm' class='dataDictionaryLink' target='_blank'>像素</a>:</td>
    <td class="dataRight1Td" valign="top">30万</td>
    </tr>

    <tr>
    <td class="dataLeft1Td" valign="top"><a href='/Mobile/Dictionary/56.htm' class='dataDictionaryLink' target='_blank'>传感器</a>:</td>
    <td class="dataRight1Td" valign="top">CMOS</td>
    </tr>

    <tr><td colspan="2"><img width="0" height="8" /></td></tr>
    </table>
    <!--拍照功能--详细介绍--结束--> <!--拍照功能--结束-->

    <!--娱乐功能--开始-->

    <!--娱乐功能--结束-->

      

  3.   

    ====================最后一部分=================
    <!--扩展存储性能--开始-->

    <!--扩展存储性能--结束-->

    <!--高级功能--开始-->

    <!--高级功能--标题--开始-->
    <table width="98%" cellpadding="0" cellspacing="0">
    <tr>
    <td width="20" height="22" style="padding:2px 0px 0px 0px;">
    <img src="/Mobile/Image/icon_circle.gif" width="16" height="16" border="0" /></td>
    <td height="22" style="padding:4px 0px 0px 0px;">
    <font class='dataTitleBlackFont'>高级功能</font></td>
    </tr>
    </table>
    <table width="99%" cellpadding="0" cellspacing="0">
    <tr>
    <td width="154" bgcolor="#6DCDFD"><img width="0" height="1" /></td>
    <td bgcolor="#cccccc"><img width="0" height="1" /></td>
    </tr>
    <tr><td colspan="2"><img width="0" height="4" /></td></tr>
    </table>
    <!--高级功能--标题--结束-->

    <!--高级功能--字段--开始-->
    <table width='98%' cellpadding='1' cellspacing='0'>
    <tr><td class='dataItemTd'>『<a href='/Mobile/Dictionary/94.htm' class='dataDictionaryLink' target='_blank'>录音</a>』</td><td class='dataItemTd'>&nbsp;</td><td class='dataItemTd'>&nbsp;</td><td class='dataItemTd'>&nbsp;</td><td class='dataItemTd'>&nbsp;</td></tr>
    </table>
    <!--高级功能--字段--结束-->

    <!--高级功能--详细介绍--开始-->
    <table width="604" cellpadding="2" cellspacing="0">
    <tr><td colspan="2"><img width="0" height="8" /></td></tr>

    <tr>
    <td class="dataLeft1Td" valign="top"><a href='/Mobile/Dictionary/94.htm' class='dataDictionaryLink' target='_blank'>录音</a>:</td>
    <td class="dataRight1Td" valign="top">4分钟录音</td>
    </tr>

    <tr><td colspan="2"><img width="0" height="8" /></td></tr>
    </table>
    <!--高级功能--详细介绍--结束--> <!--高级功能--结束-->

    <!--附加功能--开始-->

    <!--附加功能--标题--开始-->
    <table width="98%" cellpadding="0" cellspacing="0">
    <tr>
    <td width="20" height="22" style="padding:2px 0px 0px 0px;">
    <img src="/Mobile/Image/icon_circle.gif" width="16" height="16" border="0" /></td>
    <td height="22" style="padding:4px 0px 0px 0px;">
    <font class='dataTitleBlackFont'>附加功能</font></td>
    </tr>
    </table>
    <table width="99%" cellpadding="0" cellspacing="0">
    <tr>
    <td width="80" bgcolor="#6DCDFD"><img width="0" height="1" /></td>
    <td width="524" bgcolor="#cccccc"><img width="0" height="1" /></td>
    </tr>
    <tr><td colspan="2"><img width="0" height="4" /></td></tr>
    </table>
    <!--附加功能--标题--结束-->

    <!--附加功能--字段--开始-->
    <table width='98%' cellpadding='1' cellspacing='0'>
    <tr><td class='dataItemTd'>『<a href='/Mobile/Dictionary/95.htm' class='dataDictionaryLink' target='_blank'>日历</a>』</td><td class='dataItemTd'>『<a href='/Mobile/Dictionary/96.htm' class='dataDictionaryLink' target='_blank'>计算器</a>』</td><td class='dataItemTd'>『<a href='/Mobile/Dictionary/97.htm' class='dataDictionaryLink' target='_blank'>闹钟</a>』</td><td class='dataItemTd'>『<a href='/Mobile/Dictionary/109.htm' class='dataDictionaryLink' target='_blank'>备忘录</a>』</td><td class='dataItemTd'>&nbsp;</td></tr>
    </table>
    <!--附加功能--字段--结束-->

    <!--附加功能--详细介绍--开始-->
    <table width="604" cellpadding="2" cellspacing="0">
    <tr><td colspan="2"><img width="0" height="8" /></td></tr>

    <tr>
    <td class="dataLeft1Td" valign="top"><a href='/Mobile/Dictionary/95.htm' class='dataDictionaryLink' target='_blank'>日历</a>:</td>
    <td class="dataRight1Td" valign="top">支持</td>
    </tr>

    <tr>
    <td class="dataLeft1Td" valign="top"><a href='/Mobile/Dictionary/96.htm' class='dataDictionaryLink' target='_blank'>计算器</a>:</td>
    <td class="dataRight1Td" valign="top">支持</td>
    </tr>

    <tr>
    <td class="dataLeft1Td" valign="top"><a href='/Mobile/Dictionary/97.htm' class='dataDictionaryLink' target='_blank'>闹钟</a>:</td>
    <td class="dataRight1Td" valign="top">支持</td>
    </tr>

    <tr>
    <td class="dataLeft1Td" valign="top"><a href='/Mobile/Dictionary/109.htm' class='dataDictionaryLink' target='_blank'>备忘录</a>:</td>
    <td class="dataRight1Td" valign="top">支持</td>
    </tr>

    <tr><td colspan="2"><img width="0" height="8" /></td></tr>
    </table>
    <!--附加功能--详细介绍--结束--> <!--附加功能--结束-->
      

  4.   

    楼主,你所给的结果的例子
    上市时间@2003你8月@手机制式@CDMA  
    MS不在你所给的网页源码当中,把这部源码所要提取的结果说下,或者说下要提取的内容符合哪些规律吧
      

  5.   

    在里面 不过是在下面的一个TABLE里面。。还是跟以前一样 随便用个符号先隔开 最好用个比较罕见的符号隔开
      

  6.   

    这个要解析的网页源码是有用的TABLE跟无用的TABLE交错出现的
      具体就是北斗手机网的 参数页面 我们抓取是从 “基本参数”的那个TABLE开始抓取的
      网页:http://mobile.139shop.com/mobile/32/4359.htm 你可以看看
      

  7.   

    这个也太多了吧上市日期[\s\S]*?class=["']dataright1td["'][^>]*>(?<time>[^<]+)</td>[\s\S]*?手机制式[\s\S]*?class=["']dataright1td["'][^>]*>(?<mobelType>[^<]*)</td>取了两个....
      

  8.   

    还是用的委托,特殊符号也是用的“÷”,时间没测试,你看下吧yourStr = yourStr.Replace("&nbsp;", "");
    string strR = Regex.Replace(yourStr, @"<td[\s\S]*?</td>", new MatchEvaluator(regReplace), RegexOptions.IgnoreCase);
    strR = Regex.Replace(strR, @"<[^>]*>", "");
    strR = Regex.Replace(strR, @"\s+", "");
    strR = Regex.Replace(strR, @"÷+", "÷");
    strR = strR.Trim();
    strR = strR.TrimStart('÷');
    strR = strR.TrimEnd('÷');
    private string regReplace(Match m)
    {
        return "÷" + Regex.Replace(m.Value, @"<[^>]*>", "") + "÷";
    }输出:
    基本功能÷『CDMA手机』÷『可选铃声』÷『图形菜单』÷『待机图片』÷『免提通话』÷上市日期:÷2003年8月÷手机制式:÷CDMA÷支持频段:÷|CDMA1x-2000|÷理论通话时间:÷80-120分钟÷理论待机时间:÷60-100小时÷标准配置:÷两锂电池(600mAh)、旅行充电器、充电座、外置摄像头、戒指耳机、铝盒、铝制包装箱一个÷免提通话:÷支持÷外观设计÷『手表外型手机』÷『外置天线』÷外观设计:÷手表外型÷产品天线:÷外置÷机身颜色:÷亮丽黑、魔幻蓝÷产品尺寸:÷77.5×33.8×17mm÷手机重量:÷95克÷可选颜色:÷亮丽黑、魔幻蓝÷屏幕参数÷『STN屏』÷屏幕颜色:÷256色÷屏幕类型:÷STN÷详细说明:÷永不磨损的高科技水晶屏幕÷通讯功能÷『输入法』÷『短信功能』÷『话机通讯录』÷『通话记录』÷『留言应答』÷『语音拨号』÷输入法:÷中文输入法;÷话机通讯录:÷支持÷通话记录:÷支持÷留言应答:÷支持÷语音拨号:÷支持÷拍照功能÷『外置』÷摄像头位置:÷外置÷像素:÷30万÷传感器:÷CMOS÷高级功能÷『录音』÷录音:÷4分钟录音÷附加功能÷『日历』÷『计算器』÷『闹钟』÷『备忘录』÷日历:÷支持÷计算器:÷支持÷闹钟:÷支持÷备忘录:÷支持
      

  9.   

    哦,如果不要前面的,那就在最前面加一行yourStr = yourStr.Substring(yourStr.IndexOf("<!--基本功能--详细介绍--开始-->"));输出:
    上市日期:÷2003年8月÷手机制式:÷CDMA÷支持频段:÷|CDMA1x-2000|÷理论通话时间:÷80-120分钟÷理论待机时间:÷60-100小时÷标准配置:÷两锂电池(600mAh)、旅行充电器、充电座、外置摄像头、戒指耳机、铝盒、铝制包装箱一个÷免提通话:÷支持÷外观设计÷『手表外型手机』÷『外置天线』÷外观设计:÷手表外型÷产品天线:÷外置÷机身颜色:÷亮丽黑、魔幻蓝÷产品尺寸:÷77.5×33.8×17mm÷手机重量:÷95克÷可选颜色:÷亮丽黑、魔幻蓝÷屏幕参数÷『STN屏』÷屏幕颜色:÷256色÷屏幕类型:÷STN÷详细说明:÷永不磨损的高科技水晶屏幕÷通讯功能÷『输入法』÷『短信功能』÷『话机通讯录』÷『通话记录』÷『留言应答』÷『语音拨号』÷输入法:÷中文输入法;÷话机通讯录:÷支持÷通话记录:÷支持÷留言应答:÷支持÷语音拨号:÷支持÷拍照功能÷『外置』÷摄像头位置:÷外置÷像素:÷30万÷传感器:÷CMOS÷高级功能÷『录音』÷录音:÷4分钟录音÷附加功能÷『日历』÷『计算器』÷『闹钟』÷『备忘录』÷日历:÷支持÷计算器:÷支持÷闹钟:÷支持÷备忘录:÷支持
      

  10.   

    那这样看看,是不是你要的结果yourStr = yourStr.Substring(yourStr.IndexOf("<!--基本功能--详细介绍--开始-->"));
    yourStr = yourStr.Replace("&nbsp;", "");
    string strR = Regex.Replace(yourStr, @"<td[\s\S]*?</td>", new MatchEvaluator(regReplace), RegexOptions.IgnoreCase);
    strR = Regex.Replace(strR, @"<[^>]*>", "");
    strR = Regex.Replace(strR, @"『[^』]*』", "");
    strR = Regex.Replace(strR, @"\s+", "");
    strR = Regex.Replace(strR, @"÷+", "÷");
    strR = strR.Trim();
    strR = strR.TrimStart('÷');
    strR = strR.TrimEnd('÷');private string regReplace(Match m)
    {
        return "÷" + Regex.Replace(m.Value, @"<[^>]*>", "") + "÷";
    }输出:
    上市日期:÷2003年8月÷手机制式:÷CDMA÷支持频段:÷|CDMA1x-2000|÷理论通话时间:÷80-120分钟÷理论待机时间:÷60-100小时÷标准配置:÷两锂电池(600mAh)、旅行充电器、充电座、外置摄像头、戒指耳机、铝盒、铝制包装箱一个÷免提通话:÷支持÷外观设计÷外观设计:÷手表外型÷产品天线:÷外置÷机身颜色:÷亮丽黑、魔幻蓝÷产品尺寸:÷77.5×33.8×17mm÷手机重量:÷95克÷可选颜色:÷亮丽黑、魔幻蓝÷屏幕参数÷屏幕颜色:÷256色÷屏幕类型:÷STN÷详细说明:÷永不磨损的高科技水晶屏幕÷通讯功能÷输入法:÷中文输入法;÷话机通讯录:÷支持÷通话记录:÷支持÷留言应答:÷支持÷语音拨号:÷支持÷拍照功能÷摄像头位置:÷外置÷像素:÷30万÷传感器:÷CMOS÷高级功能÷录音:÷4分钟录音÷附加功能÷日历:÷支持÷计算器:÷支持÷闹钟:÷支持÷备忘录:÷支持
      

  11.   

    ====结果是这样就完全OK========上市日期÷2003年8月÷ 
    手机制式÷CDMA÷ 
    支持频段÷|CDMA1x-2000|÷ 
    理论通话时间÷80-120分钟÷ 
    理论待机时间÷60-100小时÷ 
    标准配置÷两锂电池(600mAh)、旅行充电器、充电座、外置摄像头、戒指耳机、铝盒、铝制包装箱一个÷ 
    免提通话÷支持÷         
    外观设计÷手表外型÷ 
    产品天线÷外置÷ 
    机身颜色÷亮丽黑、魔幻蓝÷ 
    产品尺寸÷77.5×33.8×17mm÷ 
    手机重量÷95克÷ 
    可选颜色÷亮丽黑、魔幻蓝÷ 
    屏幕颜色÷256色÷ 
    屏幕类型÷STN÷
    详细说明÷永不磨损的高科技水晶屏幕÷  
    输入法÷中文输入法÷ 
    话机通讯录÷支持÷ 
    通话记录÷支持÷ 
    留言应答÷支持÷ 
    语音拨号÷支持÷       
    摄像头位置÷外置÷ 
    像素÷30万÷ 
    传感器÷CMOS÷    
    日历÷支持÷ 
    计算器÷支持÷ 
    闹钟÷支持÷ 
    备忘录÷支持
      

  12.   

    还有一个地方没有考虑到 
    “头、戒指耳机、铝盒、铝制包装箱一个÷免提通话:÷支持÷外观设计÷外观设计:÷手表外型÷产品天” 连着有两个“外观设计”
    这样的没有过滤 这个TABLE其实是没用的 
    后面还有向你 SUBSTRING 之前那样的表格 怎么办呢? 如下面的,这个表格就是无用的
    难道在你的结果里面用 Replace 吗 还是说正则里面有更好的办法???
    <!--外观设计--标题--开始-->
    <table width="98%" cellpadding="0" cellspacing="0">
    <tr>
    <td width="20" height="22" style="padding:2px 0px 0px 0px;">
    <img src="/Mobile/Image/icon_circle.gif" width="16" height="16" border="0" /></td>
    <td height="22" style="padding:4px 0px 0px 0px;">
    <font class='dataTitleBlackFont'>外观设计</font></td>
    </tr>
    </table>
    <table width="99%" cellpadding="0" cellspacing="0">
    <tr>
    <td width="154" bgcolor="#6DCDFD"><img width="0" height="1" /></td>
    <td bgcolor="#cccccc"><img width="0" height="1" /></td>
    </tr>
    <tr><td colspan="2"><img width="0" height="4" /></td></tr>
    </table>
    <!--外观设计--标题--结束-->
      

  13.   

    这样试下yourStr = Regex.Replace(yourStr, @"<!--[^>]*标题--开始[^>]*-->[\s\S]*?<!--[^>]*标题--结束[^>]*-->", "");
    yourStr = yourStr.Replace("&nbsp;", "");
    string strR = Regex.Replace(yourStr, @"<td[\s\S]*?</td>", new MatchEvaluator(regReplace), RegexOptions.IgnoreCase);
    strR = Regex.Replace(strR, @"<[^>]*>", "");
    strR = Regex.Replace(strR, @"『[^』]*』", "");
    strR = Regex.Replace(strR, @"\s+", "");
    strR = Regex.Replace(strR, @"÷+", "÷");
    strR = strR.Trim();
    strR = strR.TrimStart('÷');
    strR = strR.TrimEnd('÷');private string regReplace(Match m)
    {
        return "÷" + Regex.Replace(m.Value, @"<[^>]*>", "") + "÷";
    }输出:
    上市日期:÷2003年8月÷手机制式:÷CDMA÷支持频段:÷|CDMA1x-2000|÷理论通话时间:÷80-120分钟÷理论待机时间:÷60-100小时÷标准配置:÷两锂电池(600mAh)、旅行充电器、充电座、外置摄像头、戒指耳机、铝盒、铝制包装箱一个÷免提通话:÷支持÷外观设计:÷手表外型÷产品天线:÷外置÷机身颜色:÷亮丽黑、魔幻蓝÷产品尺寸:÷77.5×33.8×17mm÷手机重量:÷95克÷可选颜色:÷亮丽黑、魔幻蓝÷屏幕颜色:÷256色÷屏幕类型:÷STN÷详细说明:÷永不磨损的高科技水晶屏幕÷输入法:÷中文输入法;÷话机通讯录:÷支持÷通话记录:÷支持÷留言应答:÷支持÷语音拨号:÷支持÷摄像头位置:÷外置÷像素:÷30万÷传感器:÷CMOS÷录音:÷4分钟录音÷日历:÷支持÷计算器:÷支持÷闹钟:÷支持÷备忘录:÷支持
      

  14.   

    如果上面的结果是你想要的,再这样优化一下yourStr = Regex.Replace(yourStr, @"<!--[^>]*(标题|字段)--开始[^>]*-->[\s\S]*?<!--[^>]*\1--结束[^>]*-->", "");
    yourStr = yourStr.Replace("&nbsp;", "");
    string strR = Regex.Replace(yourStr, @"<td[\s\S]*?</td>", new MatchEvaluator(regReplace), RegexOptions.IgnoreCase);
    strR = Regex.Replace(strR, @"<[^>]*>", "");
    strR = Regex.Replace(strR, @"\s+", "");
    strR = Regex.Replace(strR, @"÷+", "÷");
    strR = strR.Trim();
    strR = strR.TrimStart('÷');
    strR = strR.TrimEnd('÷');private string regReplace(Match m)
    {
        return "÷" + Regex.Replace(m.Value, @"<[^>]*>", "") + "÷";
    }
      

  15.   

    =====第一个“基本功能”没有干掉 基本功能÷上市日期:÷2007年÷手机制式:÷GSM÷支持频段:÷|WCDMA||850/900/1800/2100MHz|÷网络连接:÷GPRS;EDGE;÷理论通话时间:÷330分钟÷理论待机时间:÷300小时÷标准配置:÷BL-6P锂电池(830mAh),AC-6诺基亚充电器、诺基亚耳机HS-82、诺基亚micro-USB数据连接线CA-101、CDROM光盘和《用户手册》÷和弦铃声:÷支持÷可选铃声:÷MP3铃声÷内置振动:÷支持÷外观设计:÷直板÷产品天线:÷内置÷机身颜色:÷黑色÷产品尺寸:÷109.8×45×9.5mm÷手机重量:÷94克÷可选颜色:÷黑色÷屏幕颜色:÷彩色屏幕÷屏幕类型:÷TFT÷分辨率:÷240×320pix÷详细说明:÷2.0英寸÷输入法:÷中文输入法;÷EMS短信:÷支持÷多媒体短信:÷支持÷E-Mail:÷支持÷话机通讯录:÷支持÷通讯录群组:÷支持÷通话记录:÷支持÷摄像头位置:÷内置÷像素:÷200万÷传感器:÷CMOS÷变焦模式:÷数码变焦÷视频拍摄:÷有声视频拍摄;并可拍摄QCIF(176×144像素)规格的视频录像÷视频播放:÷兼容MPG-4/H.264/3GP/H.263等格式视频文件及流媒体功能÷WAP浏览器:÷支持÷MP3功能:÷播放包括MP3/AAC/AAC+等格式音乐文件÷内置游戏:÷支持÷内存容量:÷1GB÷Java扩展:÷JavaMIDP2.0÷蓝牙接口:÷支持÷数据线接口:÷micro-USB÷录音:÷支持÷日历:÷支持÷计算器:÷支持÷闹钟:÷支持
      

  16.   

    加上这句 冒失搞定了
    strR = htmlStr.Substring(htmlStr.IndexOf("<!--基本功能--详细介绍--开始-->"));
      

  17.   

    不应该的,你上面的这个结果的源码是什么样的,或者是怎么得到的,我看下你对应这个结果的源码,太长就发我邮箱,再提醒我一下[email protected]
      

  18.   

    yourStr = Regex.Replace(yourStr, @"<!--[^>]*(标题|字段)--开始[^>]*-->[\s\S]*?<!--[^>]*\1--结束[^>]*-->", "");这行代码应该把那一部分给去掉了,除非你的源字符串里并不包含
    <!--基本功能--标题--开始-->
      

  19.   

    我也来凑凑热闹....ArrayList arry = new ArrayList(); //存放结果
            string str = "你的源代码";
            Regex re = new Regex(@"<tr>\s*<td\s+class=\""dataLeft\dTd\""\s+valign=\""top\"">\s*<a\s+href='[^']+'\s*class='dataDictionarylink'[^>]+>(?<var1>[\S\s]+?)</a>:\s*</td>\s*<td\s+class=\""dataRight\dTd\""[^>]+>(?<var2>[\S\s]+?)</td>\s*</tr>", RegexOptions.IgnoreCase);
            MatchCollection mc = re.Matches(str);
            foreach (Match ma in mc)
            {
                arry.Add(ma.Groups["var1"].Value +":"+ma.Groups["var2"].Value);
            }
            foreach (string strs in arry)  //输出结果
            {
                Response.Write(strs + "<br>");
            }
      

  20.   

    你说的是对的,我的网页抓取的时候确实没有抓取这个 ”<!--基本功能--标题--开始-->“
    而是从 <Table> 开始的 
    网页原文件是这样的<!--基本功能--标题--开始-->
    <Table>
    </Table>========这样的话我在前面加上那个SUBSTRING的操作 不会太影响整个解析的完美吧??
    strR = htmlStr.Substring(htmlStr.IndexOf("<!--基本功能--详细介绍--开始-->"));
      

  21.   

    这个是结果:
    上市日期:2003年8月
    手机制式:CDMA
    支持频段:|CDMA1x-2000|
    理论通话时间:80-120分钟
    理论待机时间:60-100小时
    标准配置:两锂电池(600mAh)、旅行充电器、充电座、外置摄像头、戒指耳机、铝盒、铝制包装箱一个
    免提通话:支持
    外观设计:手表外型
    产品天线:外置
    机身颜色:亮丽黑、魔幻蓝
    产品尺寸:77.5×33.8×17mm
    手机重量:95克
    可选颜色:亮丽黑、魔幻蓝
    屏幕颜色:256色
    屏幕类型:STN
    输入法:中文输入法;
    话机通讯录:支持
    通话记录:支持
    留言应答:支持
    语音拨号:支持
    摄像头位置:外置
    像素:30万
    传感器:CMOS
    录音:4分钟录音
    日历:支持
    计算器:支持
    闹钟:支持
    备忘录:支持
      

  22.   

    windstore(雪海飄香) ( )
    ===================你这样的效率 高吗?
      

  23.   

    一直都是按你的要求在写,没太注意你要用来做什么,这样改下,直接就可以得到各项的内容,不用你这样取出来后再拆分字符串了,效率上也应该会有提高的,你测下吧,这个属于委托的另类应用了
    list = new List<string>();
    yourStr = Regex.Replace(yourStr, @"<!--[^>]*(标题|字段)--开始[^>]*-->[\s\S]*?<!--[^>]*\1--结束[^>]*-->", "");
    yourStr = yourStr.Replace("&nbsp;", "");
    string strR = Regex.Replace(yourStr, @"<td[\s\S]*?</td>", new MatchEvaluator(regReplace), RegexOptions.IgnoreCase);
    List<string> list;
    string temp;
    private string regReplace(Match m)
    {
        temp = Regex.Replace(m.Value, @"(<[^>]*>|\s)", "");
        if (temp != "")
        {
            list.Add(temp);
        }
        return "";
    }
      

  24.   

    差点忘了说,结果是在list中,而不是最后的strR