2009-09-30 256 views
1

之間,我有一些HTML獲取數據HTML標籤

<body> 
    <p id="errorMessage">System.Web.HttpException: Path '/DynamicData/DimOrganisations/List.aspx' was not found.</p> 
    <p>Generated: Tue, 29 Sep 2009 18:04:18 GMT</p> 

我想通過我的HTML搜索標籤

p id="errorMessage" 

然後取出用HTML中的數據。因此,運行一些內容來查找標記並從開始標記和結束標記之間獲取數據。所以最後我得到:

System.Web.HttpException: Path '/DynamicData/DimOrganisations/List.aspx' was not found. 

任何人都可以幫忙。我使用C#2008

感謝

馬克

回答

4

您可以使用HTML Agility Pack解析HTML並找到元素/屬性,你所需要的。

+0

+1:這是一個功能強大的庫,使用解析器/ DOM是解決問題的最佳方法。 – TrueWill 2009-09-30 17:07:08

1

你如何解決這個問題將取決於你想要解決方案的普遍程度。如果您正在檢查的HTML是由您的應用程序創建的,並且您可以保證其格式,那麼您可以使用簡單的正則表達式來解決問題。也就是說,如果你總是有:

<p id="errorMessage>Error message goes here.</p>

隨後的正則表達式查找該模式是非常簡單的編寫,測試和維護。

但是,如果您在錯誤消息中允許任意HTML標記,那麼您必須使用更復雜的東西,比如HTML解析器。

如果這是一個內部調試工具,我強烈建議您採用更簡單的方法。爲您的錯誤消息格式化HTML,以便使用最簡單的方法進行解析。