回答
如何:
\d{1,2}(?:[.,]\d{1,2})?
解釋:
\d{1,2} : one or two digits
(?: : start non capture group
[.,] : . or ,
\d{1,2} : one or two digits
)? : end group, optional
+1解釋 – user49126 2012-01-11 11:50:59
@ user49126:謝謝。 – Toto 2012-01-11 12:16:50
建議:使用[IgnorePatternWhitespace](http://msdn.microsoft.com/query/dev10.query?appId=Dev10IDEF1&l=zh-CN&k=k(SYSTEM.TEXT.REGULAREXPRESSIONS.REGEXOPTIONS.IGNOREPATTERNWHITESPACE); k (TargetFrameworkMoniker-%22.NETFRAMEWORK%2cVERSION%3dV4.0%22); k(DevLang-CSHARP)&rd = true),它具有#的實際正則表達式模式註釋轉義。它也允許在多行上傳播模式。 – OmegaMan 2012-01-11 14:37:53
這是你的正則表達式:
\d{1,2}[.,]\d{1,2}
在這裏看到它在行動:http://regexr.com?2vman
這裏有一個稍微不同的版本:
\d\d?[.,]\d\d?
在這裏看到它在行動:http://regexr.com?2vmaq
如果你想同時匹配出小數,使用此:
\d\d?[.,]?\d{0,2}
看到它在這裏的行動:http://regexr.com?2vml4
工程很好,但我忘了再提一個條件。它可以只是一個沒有或沒有的數字。例如只需3 – user49126 2012-01-11 08:51:35
@ user49126 - 查看我的答案更新。 – 2012-01-11 15:13:32
我會像這樣的東西去:
Regex regex = new Regex(@"\d{1,2}[\.,]\d{1,2}");
無需轉義括號內的'.' ... – 2012-01-10 20:44:24
爲什麼匹配嗎?
只需刪除逗號和使用的實際數量:
Regex.Replace("8,675,309.02", "(,)", string.Empty) // Outputs 8675309.02
如果這是一個驗證的情況下,使用int.Parse會讓你知道,如果它有效。
- 1. PHP自定義的正則表達式
- 2. grok的自定義正則表達式
- 3. 自定義正則表達式
- 4. 自定義正則表達式
- 5. 自定義正則表達式= $〜#№\; < >%/
- 6. 自定義正則表達式
- 7. 自定義正則表達式
- 8. 改進自定義正則表達式
- 9. 自定義正則表達式需要
- 10. 定義正則表達式
- 11. JAVA正則表達式:讓自定義的正則表達式String.split()
- 12. swiftlint自定義規則的正則表達式
- 13. jQuery驗證插件(正則表達式)的自定義規則
- 14. 正則表達式的含義(正則表達式高爾夫)
- 15. jEdit自定義模式下的多行正則表達式
- 16. JavaScript的正則表達式擴展`/模式/`自定義功能
- 17. 自定義'HTTP GET樣式'請求的正則表達式
- 18. 正則表達式解析器和自定義轉義字符
- 19. C#正則表達式定義問題
- 20. boost正則表達式定義
- 21. 如何定義與正則表達式
- 22. 正則表達式重定義錯誤
- 23. 誰定義了正則表達式?
- 24. vb.net/asp.net自定義表達式中的正則表達式驗證程序
- 25. 轉義正則表達式
- 26. 特定的正則表達式/正則表達式條件
- 27. 正則表達式replacaing一個自定義模式
- 28. 使用正則表達式匹配自定義公式
- 29. 創建正則表達式匹配自定義格式
- 30. 正則表達式RegEx驗證自定義Excel格式
這是習慣在計算器上提供的,你已經嘗試過什麼(一直找不到工作)片段表明,你已經努力自己解決這個問題。 – Reddog 2012-01-10 20:42:19
我的不好。下一次我會嘗試更多:-) – user49126 2012-01-11 08:56:17