2012-01-23 46 views
1

給出如何使用xpath選擇器從此表格單元中獲取價格?

<TD ALIGN="LEFT" VALIGN="top" WIDTH="35">&nbsp;</TD><TD ALIGN="LEFT" VALIGN="top" WIDTH="150" STYLE="font-size: 11px; font-family: arial" HEIGHT="65"> <a href="http://www.site.com/page/IDLM/DATA/VALUE/10001600"><B><i>Brand</i></B><BR>Part</a><BR> 
$72.00 
</TD> 

有一個XPath選擇器將只檢索的價格?我可以用

//td/text() 

檢索

Array 
(
    [0] => Â 
    [1] => 

    [2] => Â 
    [3] => Â 
    [4] => 
    [5] => 
$72.00 

    [6] => Â 
) 

,然後使用正則表達式拋出了壞的價值觀,但我認爲這將是更可靠的使用適當的XPath選擇。

+0

我認爲
沒有正確格式化 – Jayy

回答

1

有很多方法可以做到這一點。確定哪一個最好取決於您的實際生活來源輸入。根據您所提供的樣品,我會轉動的最後BR元素:

//TD/BR[last()]/following-sibling::text()[1] 

這個表達式選擇跟隨在文檔中的任何TD最後BR元素的第一個文本節點。請注意,此節點包含前導和尾隨空格。用normalize-space函數包裝表達式以將其刪除。

+0

謝謝你的作品。我很困惑如何應用normalize-space(),正如我所讀到的,表明'// td/br [last()]/following-sibling :: text()[1] [normalize-space()]會將normalize-space()應用到當前節點,但這不起作用 – jela

相關問題