代码之家  ›  专栏  ›  技术社区  ›  Lars Holdgaard

正则表达式-匹配记录i HTML

  •  -1
  • Lars Holdgaard  · 技术社区  · 14 年前


    <tr onclick="window.location.href='Vareauktion.asp?VISSER=Ja&funk=detaljedata&ID=14457'" style="cursor:hand" onmouseover="bgColor='#808080'" onmouseout="bgColor='#4b4b4b'" bgcolor="#4b4b4b"> 
                                <td valign="top"> 
                                <div id='OrdreID14457'></div> 
                    <script>RunTimer('OrdreID14457', '04-10-2010 14:30:22');</script> 
                                <em><font size="-1">04-10-2010 14:30:22</font></em></td> 
                                <td valign="top"> Voldby (28|0)</td> 
                                <td valign="top">02:16:00</td> 
                                <td valign="top">09-10-2010<br>15:30:22</td> 
                                <td valign="top">Modeltog <img src="images/Gods_Modeltog.gif" alt="Modeltog" height="15" border="0"></td> 
                                <td valign="top">6603 T.</td> 
                                <td valign="top"> 
                                <img src='images/moneter.gif' height='13' alt='Moneter'>5.751.213 
    
                                </td> 
                                <td valign="top"> 
    
                                </td> 
                                <td valign="top"> 
    
                                </td> 
                            </tr>
    

    到目前为止,我已经尝试了以下方法:

    id='OrdreID.*[^(<td colspan="9" height="1" bgcolor="#000000">)]*<td colspan="9" height="1" bgcolor="#000000">
    

    我想做的是:

    • 比赛开始于:id='OrdreID
    • 事后接受一切,直到它看到: <td colspan="9" osv..
    • 最后,我匹配了决赛:

    在我当前的解决方案中,我遇到的问题是排除模式只匹配字符,而不匹配字符串。。

    我一直在读“lookingahead”,但我不知道如何在这种情况下使用它。。

    拉尔斯

    2 回复  |  直到 14 年前
        1
  •  0
  •   jball    14 年前

    使用 HtmlAgilityPack

    string pattern = "(?<=id='OrdreID).+(?=<td colspan=\"9\" osv)";
    
        2
  •  2
  •   maček    14 年前

    我看你在需要螺丝刀的地方试过锯子。

    你试过使用HTML解析器吗?