正则表达式,子串htmlstring

时间:2013-04-02 17:08:29

标签: c#

我有一个要解析的html字符串。     ResultsString

         <table id="Table1">
            <tr>
              <td width="50%">
                 Result: <span style="font-weight:bold; color:GREEN;"></span>
               </td>
               <td width="50%">
                  ID: <span style="font-weight:bold;">790043</span>
               </td>
           </table>
         <table id="Table2">
            <tr>
              <td class="name">
                Status:
             </td>
             <td class="value">
                None
             </td>
             </tr>

        </table>
<br /><br />
<a href="#" onclick="$('#vvvv').toggle();return false;" /></a>
<br />
<div id="pp1" style="displa
</div>

如何仅提取/子串化两个表标记中的文本。 所以我的resuting html字符串将是

   <table id="Table1">
            <tr>
              <td width="50%">
                 Result: <span style="font-weight:bold; color:GREEN;"></span>
               </td>
               <td width="50%">
                  ID: <span style="font-weight:bold;">790043</span>
               </td>
           </table>
         <table id="Table2">
            <tr>
              <td class="name">
                Status:
             </td>
             <td class="value">
                None
             </td>
             </tr>

        </table>

请建议

谢谢你

2 个答案:

答案 0 :(得分:0)

您想要转换HTML文件吗?这是XSLT工作。

答案 1 :(得分:0)

根据建议,您应该使用HTML解析器,例如HTML Agility Pack。否则,如果您有嵌套结构等,则可能会遇到问题。

对于这个简单的例子,你可以使用这个正则表达式:

string html = Regex.Match(ResultsString,
                          @"<table.+<\/table>",
                          RegexOptions.Singleline).Value;

但是,只有当您的输入字符串与您向我们展示时一样简单时!