2011-01-14 103 views

回答

20
^[0-9]*\.[0-9]{2}$ or ^[0-9]*\.[0-9][0-9]$ 
+0

如何使用這個在JavaScript中匹配 – 2016-07-14 09:55:36

7

如果你正在尋找一個整條生產線的比賽我會與保羅的答案去。

如果你正在尋找匹配的一些witihn線嘗試:\d+\.\d\d(?!\d)

  • \d+一個的多個數字(同[0-9]
  • \.匹配於句號
  • \d\d匹配兩個小數位
  • (?!\d)是否定的預測,確保下一個字符不是數字。
+0

'D'=>'\ D'和`!?`=>`? !` – marcog 2011-01-14 12:51:56

+0

@marcog:謝謝。我看了幾遍,未能發現那些錯別字... – Grhm 2011-01-14 13:05:24

3

這取決於有點什麼應該不匹配,應該怎樣和在什麼情況下

例如,你應該對測試僅文本持有多少?在這種情況下,你可以這樣做:

/^[0-9]+\.[0-9]{2}$/ 

但是,這將考驗整個字符串,因此失敗,如果這場比賽應該是一個更大的整體

一部分來完成,如果它需要內部較長styring你可以做

/[0-9]+\.[0-9]{2}[^0-9]/ 

但如果字符串是會失敗僅僅是數字(因爲它需要一個沒有數字跟隨數)

,如果您需要到b Ë能夠覆蓋這兩種情況下,你可以使用以下命令:

/^[0-9]+\.[0-9]{2}$|[0-9]+\.[0-9]{2}[^0-9]/ 
+0

有趣的方法。我不確定它會在更長的字符串末尾發生一個數字。我建議你的最後一行可以改爲`/ [0-9] + \。[0-9] {2}([^ 0-9] | $)/` – Grhm 2011-01-14 13:09:37

0

您也可以嘗試正則表達式

^\d+(\.\d{1,2})?$ 

or 
var regexp = /^\d+\.\d{0,2}$/; 

// returns true 
regexp.test('10.5') 

or 
[0-9]{2}.[0-9]{2} 

or 
^[0-9]\d{0,9}(\.\d{1,3})?%?$ 

or 
^\d{1,3}(\.\d{0,2})?$ 
-1

是下面的值是有效的浮點輸入(如價格字段)?

0.00 in price field?

按我的0.01和0.10是有效的,但不是0.00是無效的浮點值

相關問題