[英]Regular Expression limiting match only for “.” difficulties
我正在為WP7開發一個應用程序並將其用於我的RegEx
new System.Text.RegularExpressions.Regex(@"\\D\\.{1}");
基本上我希望用戶只輸入一個數字數據.
允許為double
,它在用戶僅輸入1個句點但在添加另一個句點后應用崩潰時起作用
我個人不會為此使用正則表達式。
bool isInputGood(string input) {
double d;
return double.TryParse(input, out d);
}
當然,這不會拒絕像123.456.789
這樣的東西,但它會接受像123.456 e+5
這樣的東西
new System.Text.RegularExpressions.Regex(@"^\s*[0-9]+(\.[0-9]+)?\s*$");
這將檢查整個字符串(用^
和$
錨定)並匹配“合法”數字。
請注意,這不適用於可能在不同區域設置上運行的應用程序,因為小數分隔符可能會有所不同。 為什么不通過執行double.TryParse()
來檢查輸入?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.