2012-08-08 31 views
0

我需要能夠以價格值從給定字符串的字符串匹配Shipping (UK):</span>正則表達式相匹配一個字

Shipping (UK):</span>&#163;2.95 

正則表達式到目前爲止

(?<=\):<\/span>).* 
開始

我試圖做這樣的事情...

(?<=\Shipping (UK):<\/span>).* 

但這不起作用,什麼是正確的方式來構造這個正則表達式?

+0

如果你只是在價格的價格之後,你不能只用'\ d + \。\ d {2}'來搜索那個價格嗎? – andrewsi 2012-08-08 16:36:26

+0

大一點的在線工具檢查您的正則表達式語法: http://www.regextester.com/ – 2012-08-08 16:36:34

+0

@Charmander是的,我知道, – 2012-08-08 16:37:10

回答

2

你需要躲避括號中的正則表達式當前to get it to match:

(?<=Shipping \(UK\):<\/span>).* 

此外,火龍是正確的,你不想要的速記\S,你只想S

+0

確定這是偉大的,我把逃生括號放錯了地方,但爲什麼會出現不字符串「Shipping」之前的轉義括號? – 2012-08-08 16:39:19

+2

因爲您只能轉義在正則表達式中具有特殊含義的字符 - 括號創建一個捕獲組,並且您希望匹配文字字符括號。 – nickb 2012-08-08 16:40:31

+0

我明白了,謝謝。 – 2012-08-08 16:43:33