我有正則表達式,應檢查是否字符串是十進制數...REGEXT幫助小數
^([\+\-])?\d{1,10}[\.,]?\d{1,10}?$
- 開始單+或 - // 不是強制性
- 遵循位數
- 遵循小數單個分離// 不是強制性
- ,並按照一到十位數// 不是強制性 - 這應該是隻需要按照小數點分隔
的情況下,但不是在
-1 //single digit
的情況下工作,如果有超過10 digits w/o decimal separator -> should fail
assertEquals(false, Util.isDecimalNumber("12345678901"));
有沒有更簡單的方法來檢查字符串是否是十進制數字?
你受限於正則表達式?幾乎所有的編程語言都提供了一個爲你做這個的功能。 – flowit
問題在於您的RegExp。你需要使用'{0'量詞而不是'?':**'^([\ + \ - ])?\ d {1,10} [\。,]?\ d {0,10} $'** –
是'數123456.789123456'有效? – hjpotter92