如何验证字符串条目以确保其格式为';数字数字数字';(1.2.3)
本文关键字:数字 格式 确保 验证 何验证 字符串 | 更新日期: 2023-09-27 17:57:33
我有一个创建发布的系统,我必须通过文本框给出发布版本。它存储在我的数据库中的字段是一个nvarchar,所以是一个字符串。
我想确保这个条目是格式化的,所以它总是一个数字,然后是句号,然后是数字,然后又是句号,最后是数字(1.2.3)。有人能帮我确保点击提交按钮时是这样吗?
非常感谢。
通过使用RegEx,您可以验证输入。我想你说的数字是指一位数:
string text = "1.2.3";
bool isValid = Regex.IsMatch(text, "^''d''.''d''.''d$");
如果你想验证一个或多个数字,你必须添加+
string text = "12.23.34";
bool isValid = Regex.IsMatch(text, "^''d+''.''d+''.''d+$");
使用正则表达式:
^'d+'.'d+'.'d+$
^表示开始,$表示结束,''d+表示"行中有一个以上的数字可用",以及。意思是".",但必须以前导'' due to转义。在正则表达式中具有特殊含义。
更长的方法,不使用regex(我讨厌regex…只是品味问题,我知道我应该学习它们,并在适当的时候使用它们…)
bool IsInputValid(string input)
{
string[] values = input.Split('.');
if (values.Length != 3)
return false;
int tmp = 0;
foreach (string s in values)
if (!int.TryParse(s, out tmp))
return false;
return true;
}