2011-04-26 65 views
-1

如果我想獲得以下內容的當前價格416.00,我可以用什麼正則表達式來獲得它?網頁中有些地方內容相似,除了我想要的字詞Discount在當前價格之後幾行之後。 416,52020%是可變的。謝謝。關於正則表達式的一些東西

<tr> 
    <td class="txt_11px_b_EB6495" width="50" nowrap>Current Price?</td> 
    <td class="txt_11px_b_EB6495">HK$ 416.00</td> 
</tr> 
<tr> 
    <td class="txt_11px_n_999999">Original price?</td> 
    <td class="txt_11px_n_999999">HK$ 520.00</td> 
</tr> 
<tr> 
    <td class="txt_9px_n_999999">&nbsp;</td> 
    <td class="txt_9px_n_999999">Discount 20%</td> 
</tr> 
+5

哦,不,不會再... – 2011-04-26 05:01:06

+0

您正在使用什麼語言相匹配? – Kobi 2011-04-26 05:06:07

回答

0

使用HTML解析器獲取文本節點,然後使用正則表達式提取價格。

你會使用類似...

\d+(?:\.\d{2}|%) 

我只是測試它和它匹配...

  • 416.00
  • 520.00
  • 20%

我認爲(我不清楚)你想要的價格es 折扣百分比。我也匹配%,所以你可以知道比賽中的比例是多少。

1

您可以使用

" (\d+\.\d*)</td>" 

這將520.00,2.00,123.1和123

+0

我認爲這個更正版本會做得很好。 '(\ d + \。\ d *)' – abi1964 2011-04-26 06:45:26

+0

實際上網頁上還有其他當前的價格信息,我想要捕獲的是第11行html代碼之後的「Discount」。因此,如果只使用(\ d + \。\ d $)將獲得其他當前價格 – hosir 2011-04-26 09:44:31