在web开发和Cs开发中,开发者都会面对数据校验的校验的问题,不正确的校验,可能会曹成数据异常,使用正则表达式,则可以避免大部分这样的问题。 在C# 中使用正则表达式,要引用System.Text.RegularExpressions这个命名空间,使用Regex.IsMatch()方法,检查数据格式是否与正则表达式一致。
public int BeginCheckEmpty()
{
if (this.Text.Trim().Length==0)
{
this.errorProvider.SetError(this, "必填项不能为空");
return 0;
}
else
{
this.errorProvider.SetError(this, string.Empty);
return 1;
}
}
/// <summary>
/// 通用正则表达式检查方法
/// </summary>
/// <param name="regularStr">正则表达式</param>
/// <param name="errorStr">错误信息</param>
/// <returns>如果检查OK返回1,否则返回0</returns>
public int CommonCheck(string regularStr, string errorStr)
{
if (BeginCheckEmpty() == 0) return 0;
if (!Regex.IsMatch(this.Text.Trim(), regularStr))
{
this.errorProvider.SetError(this, errorStr);
return 0;
}
else
{
this.errorProvider.SetError(this, string.Empty);
return 1;
}
}
常用的正则表达式:https://download.csdn.net/download/qq_39157152/19710736?spm=1001.2014.3001.5501
Email地址:^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$
域名:[a-zA-Z0-9][-a-zA-Z0-9]{0,62}(/.[a-zA-Z0-9][-a-zA-Z0-9]{0,62})+/.?
InternetURL:[a-zA-z]+://[^\s]* 或 ^http://([\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?$
手机号码:^(13[0-9]|14[5|7]|15[0|1|2|3|5|6|7|8|9]|18[0|1|2|3|5|6|7|8|9])\d{8}$
电话号码("XXX-XXXXXXX"、"XXXX-XXXXXXXX"、"XXX-XXXXXXX"、"XXX-XXXXXXXX"、"XXXXXXX"和"XXXXXXXX):^(\(\d{3,4}-)|\d{3.4}-)?\d{7,8}$