<Html>
  <Body>
     <Table>
       <tr><td>*****</td></tr>
       <tr><td>*****</td></tr>
       <tr><td>*****</td></tr>
       .........
     </Table>   some other code     <Table>
       <tr><td>1111</td></tr>
       <tr><td>2222</td></tr>
       <tr><td>3333</td></tr>
       .........
     </Table>   some other code     <Table>
       <tr><td>aaaaa</td></tr>
       <tr><td>bbbbb</td></tr>
       <tr><td>cccc</td></tr>
       .........
     </Table>  </Body>
<Html>如果以上的HTML是一个string(并非格式完整的XML形式)
怎样用正则表达式获得某一个<table>中的code
例如如果我想取得第2个table中的code需要得到一下结果
       <tr><td>aaaaa</td></tr>
       <tr><td>bbbbb</td></tr>
       <tr><td>cccc</td></tr>
       .........改怎样做?

解决方案 »

  1.   

    public string SubStr(string str, string str1, string str2)
        {
            int start, stop;
            start = str.IndexOf(str1, 0, str.Length);
            stop = str.IndexOf(str2, 0, str.Length);
            return str.Substring(start + str1.Length, stop - start - str1.Length);    }
    找到     <Table>
           <tr><td>1111</td></tr>
           <tr><td>2222</td></tr>
           <tr><td>3333</td></tr>
           .........
         </Table>纪录, 删除
      

  2.   

    sorry.
    取得第2个table中的code应该是       <tr><td>1111</td></tr>
           <tr><td>2222</td></tr>
           <tr><td>3333</td></tr>
           .........
      

  3.   

    to zhaochong12:这样怎么指定是取哪一个Table?
      

  4.   

    哦, 还要找第二个呐~ 那就先找到第一个, 直接就能找到, 这样操作public string SubStr1(string str, string str1, string str2)
        {
            int start, stop;
            start = str.IndexOf(str1, 0, str.Length);
            stop = str.IndexOf(str2, 0, str.Length);
            return str.Substring(start + str1.Length-10, stop - start - str1.Length+20);    }获得周边文字, str=str.移出str(text,SubStr1);再找SubStr 就是第二个, 笨办法, 不过好用...
      

  5.   

    http://community.csdn.net/Expert/TopicView3.asp?id=5225944
      

  6.   

    欢迎各界.Net初学&高手们加入Q群12757054(要经常在线)
    希望大家的问题能够及时的得到解决.