我使用^-\d*\.?\d+$
負數匹配。但是,這接受-0。 我想限制匹配-0的正則表達式。有人可以幫忙嗎? 在此先感謝。非零負數十進制數的正則表達式
2
A
回答
4
您可以使用
^-(?!0*\.?0+$)\d*\.?\d+$
^^^^^^^^^^^^
的(?!0*\.?0+$)
負向前查找失敗的比賽,如果該字符串只包含-
,然後一個int /浮點喜歡數字,表示零。
詳細:
^
- 串 開始
-
- 一個連字符(?!0*\.?0+$)
- 當前位置後,失敗,如果下面的模式匹配比賽:0*
- 零個或多個0
s\.?
- 任選.
0+
- 1以上0
小號$
- 串
的端
\d*
- 0+數字\.?
- 任選.
\d+
- 1位或更多位數$
- 字符串結尾。
+0
謝謝。它的工作完美。 – user3534857
2
也許正則表達式不是正確的工具。
var input = "-1234"; // or whatever
var num = +input;
if(isNaN(num)) throw new Error("Invalid input");
if(num >= 0) throw new Error("Only negative numbers allowed");
// num is a valid negative number. Done.
相關問題
- 1. 十進制數的正則表達式
- 2. 非零十六進制值的正則表達式
- 3. 正則表達式表示jquery的非十進制數值
- 4. 十進制值的正則表達式
- 5. 正則表達式來驗證.NET的非負十進制或空白?
- 6. 有限制的十進制數的正則表達式
- 7. 正則表達式十進制到int
- 8. 十進制值的正則表達式限制16位數
- 9. 正則表達式僅接受整數和十進制數
- 10. 正則表達式幫助:十進制正數,2位
- 11. 0或5的單位十進制數的正則表達式
- 12. 帶點和空白的十進制數的正則表達式
- 13. c#正則表達式的數字範圍十進制
- 14. 驗證十進制數的正則表達式
- 15. Yii中驗證十進制數的正則表達式
- 16. 如何編寫捕獲十進制數的正則表達式?
- 17. 使用正則表達式分裂出一個十進制數
- 18. 十進制數正則表達式包括+, - 符號
- 19. 正則表達式來驗證十進制數
- 20. 正則表達式不承認十進制數以及
- 21. 正則表達式,找到數字,0或十進制
- 22. 規範化十進制數正則表達式
- 23. 十位數字的正則表達式
- 24. 負數的Java正則表達式?
- 25. 正則表達式和非十進制的java腳本中的正則表達式
- 26. 正則表達式以匹配PHP中的非負整數?
- 27. 正則表達式的任何非零數字
- 28. 在jquery中的正數十進制值和-1值的正則表達式
- 29. 只有數字,這個數字可能是十進制的(正則表達式)
- 30. 以十進制表示驗證價格的正則表達式
如果數字爲-0.234,即數字以零開始但非零,該怎麼辦?你不想得到這個號碼嗎? –
我想要這個號碼匹配。我不想要像-0,-0.000,-00000000等任何匹配。任何零是不應該匹配。 – user3534857