2014-02-10 38 views
0

我想使用HTMLAgilityPack從網站捕獲數據。數據存儲在表格中,但問題在於不止一個TD標籤具有相同的類別,我不知道如何在分隔的字段中對它們進行過濾。從具有相同類的表中獲取HTMLagilitypack的數據

這裏是我講:

<td class="first even"> 
    Phone number: 
</td> 
<td class="even"> 
    06522366154 
</td> 

<td class="first even"> 
    Mobile Number: 
</td> 
<td class="even"> 
    09163524712 
</td> 

<td class="first even"> 
    Email: 
</td> 
<td class="even"> 
    [email protected] 
</td> 
在這個HTML代碼

,以「09xxxx」和電話號碼手機開始啓動以「0XXX」你知道的電子郵件。我在C#中使用了下面的代碼,並且捕獲了所有混合的值。

HtmlNodeCollection nodes1 = doc.DocumentNode.SelectNodes("//td[@class='even']"); 

感謝

回答

0

使用starts-with做前綴檢查(是否該電話號碼將從零開始?),你可能會檢查使用contains在郵件地址@

//td[@class = 'even' and (starts-with(normalize-space(.), '0') or contains(., '@'))] 

XPath 1.0不支持正則表達式。您最好在C#之外的XPath之外進行字符串操作和驗證。

相關問題