我在尋找一個正則表達式,它只驗證正數數字。
例如
0無效。
0.123有效。
任何正整數都是有效的。
任何負數無效C中正數的正則表達式#
回答
這可以幫助ü
正數--- ^\d*\.{0,1}\d+$
這會給你.123作爲一個possitive(這是!),但它不像Klass Jan的例子(0。123) – dotoree 2012-03-02 10:18:38
我不相信,一個正則表達式是測試正數的最佳方式,但如果你必須使用正則表達式由於某種原因,那麼這應該符合你們所要求的:
^(?:[1-9]\d*(?:\.\d+)?|0\.0*[1-9]\d*)$
+1爲參數,不應使用正則表達式來解析數字。這是一個文本匹配工具。 – Aphelion 2012-03-02 10:26:54
試試這個
^(?!-|0(?:\.0*)?$)\d+(?:\.\d+)?$
^
字符串
(?!-|0(?:\.0*)?$)
負前向斷言的開始,當字符串起始失敗「 - 」或一個0和0.0 *後跟字符串的結尾。
\d+
比賽至少一位
(?:\.\d+)?
匹配任意一個點,隨後在至少一個數字
$
的字符串的結尾
如果你只是想驗證輸入數字作爲有效正數,您不需要Regex
- 只需使用Double
或Decimal
上定義的Parse
或TryParse
方法並檢查值是否爲正數。
decimal test;
if(decimal.TryParse(myString, out test))
{
// parsed OK, myString is a valid decimal
if(test > 0)
{
// yay, it is positive!
}
}
- 1. 正則表達式在c中的正則表達式#
- 2. Objective-C和正則表達式中的正則表達式
- 3. 正則表達式的C#正則表達式
- 4. 轉換C#正則表達式的JavaScript正則表達式
- 5. 轉換C#正則表達式的JavaScript正則表達式
- 6. 正則表達式(正則表達式)
- 7. 正則表達式(正則表達式)
- 8. 正則表達式(正則表達式)
- 9. C#的正則表達式
- 10. 「C:\\」的正則表達式
- 11. C++正則表達式與提升正則表達式
- 12. C#正則表達式替換爲正則表達式
- 13. 轉換PHP正則表達式C#正則表達式
- 14. Javascript正則表達式到c#正則表達式
- 15. C#正則表達式分割和正則表達式
- 16. 將C#正則表達式轉換爲JavaScript正則表達式
- 17. 正則表達式使用GNU C正則表達式庫
- 18. C/C++中的正則表達式庫
- 19. C#不正確的正則表達式
- 20. 正則表達式正則表達式返回的值正則表達式
- 21. C#的正則表達式的指數
- 22. C#中的正則表達式選項和Visual Studio中的正則表達式
- 23. C#正則表達式NSRegularExpression
- 24. 正則表達式在C#
- 25. 正則表達式C#
- 26. 正則表達式Objective-c
- 27. C#和正則表達式
- 28. 正則表達式C#
- 29. 子正則表達式C#
- 30. 正則表達式C#IsMatch()
谷歌說什麼? – Mithrandir 2012-03-02 10:11:06
爲什麼0.123不是正數?聽起來就像你想找到1或更多的數字。 – SpaceBison 2012-03-02 10:11:30
@SpaceBison - 你看過這個問題嗎? 0.123有效。 – Oded 2012-03-02 10:12:00