[英]Regex in c# for digit with comma
我想使用RegEx來驗證輸入是否為
空->到100
范例:0或1或10,1或20.2或99
只有正值,0或null值到100,並接受點和逗號。 任何人都可以給我正確的C#正則表達式嗎?
非常感謝 :)
數字正則表達式的許多示例可以在這里找到
正則表達式是關於匹配字符的。 它不了解數字。
嘗試使用double.TryParse()
解析,如果解析失敗是因為字符串具有,
而不是.
,更換,
用.
然后再試一次。
嘗試這個:
(100|\d{1,2}[.,]\d+)
但是在這里使用Double.Parse()
更正確。
string str = '10,1';
bool valid = false;
double num = -1;
str = str.Replace(",", ".");
if (String.IsNullOrEmpty(str)) {
valid = true;
} else {
try {
num = Double.Parse(str);
} catch (Exception ex) {
valid = false;
}
if (num >= 0 && num <= 100) {
valid = true;
}
}
*為什么我不使用Double.TryParse()
代替?
可悲的是,解析失敗會使結果0
下降到有效狀態。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.