using System;
using System.Text.RegularExpressions;
namespace ElecricPowerSA.BC
{
/// <summary>
/// ConfirmationControls验证类
/// </summary>
public class ConfirmationControls
{
//构造函数
public ConfirmationControls()
{
//
// TODO: 在此处添加构造函数逻辑
//
}
//正则表达式集合
private string[] strPattern ={@"^[1-9]/d*$",//0.正整数
@"^-[1-9]/d*$ ",//1.负整数
@"^-?[1-9]/d*$",//2.整数
@"^[1-9]/d*|0$",//3.非负整数
@"^-[1-9]/d*|0$",//4.非正整数
@"^[1-9]/d*/./d*|0/./d*[1-9]/d*$",//5.正浮点数
@"^-([1-9]/d*/./d*|0/./d*[1-9]/d*)$",//6.负浮点数
@"^-?([1-9]/d*/./d*|0/./d*[1-9]/d*|0?/.0+|0)$",//7.匹配浮点数
@"^[1-9]/d*/./d*|0/./d*[1-9]/d*|0?/.0+|0$",//8.匹配非负浮点数(正浮点数 + 0)
@"^(-([1-9]/d*/./d*|0/./d*[1-9]/d*))|0?/.0+|0$",//9.匹配非正浮点数(负浮点数 + 0)
@"^[A-Za-z]+$", //10.匹配由26个英文字母组成的字符串,
@"^[A-Z]+$", //11.匹配由26个英文字母的大写组成的字符串,
@"^[a-z]+$", //12.匹配由26个英文字母的小写组成的字符串,
@"^[A-Za-z0-9]+$", //13.匹配由数字和26个英文字母组成的字符串匹配
@"^/w+$",//14.由数字26个英文字母或者下划线组成的字符串,
//---------------------特殊字符串-----------------------------------------------//
@"/d+/./d+/./d+/./d+",//15.匹配ip地址:
@"/d{15}|/d{18}",//16.匹配身份证:
@"/w+([-+.]/w+)*@/w+([-.]/w+)*/./w+([-.]/w+)*",//17.匹配Email地址的正则表达式:
@"[a-zA-z]+://[^/s]*",//18.匹配网址URL的正则表达式:
@"/d{3}-/d{8}|/d{4}-/d{7}",//19.匹配国内电话号码:
@"[1-9]/d{5}(?!/d)",//20,匹配中国邮政编码:
@"^(/d{2}|/d{4})[/-//]((0?[1-9])|(1[0-2]))[/-//]((0?[1-9])|((1|2)[0-9])|30|31)$"//日期验证
};
/// <summary>
/// 用于判断是否为空
/// </summary>
/// <param name="strConfirmation">被判断的</param>
/// <returns>true是为空,false不为空</returns>
public bool IsNull(string strConfirmation)
{
if(strConfirmation=="")
{
return true;
}
return false;
}
/// 用于判断两个是否(相等'=',大于等于'>=',小于'<')
/// </summary>
/// <param name="strConfirmation">判断</param>
/// <param name="strIs_confirmed">被判断</param>
/// <param name="Mark">符号</param>
/// <returns>true匹配的,false不匹配</returns>
public bool IsMatch(string strConfirmation,string strIs_confirmed,string Mark)
{
if(Mark=="="&&strConfirmation==strIs_confirmed)
{
return true;
}
if(Mark==">="&&strConfirmation==strIs_confirmed)
{
return true;
}
if(Mark=="<"&&strConfirmation==strIs_confirmed)
{
return true;
}
return false;
}
/// <summary>
/// 用户于匹配某一指定格式
/// </summary>
/// <param name="strConfirmation">判断的字符串</param>
/// <param name="pattern">正则表达试的编号(见上strpattern的定义)</param>
/// <param name="nLength">长度</param>
/// <returns>true匹配,false不匹配</returns>
public bool IsMatchAssignsForm(string strConfirmation,int pattern,int nLength)
{
bool check;
System.Text.RegularExpressions.Regex reg = new Regex(this.strPattern[pattern]);
check= reg.IsMatch(strConfirmation,0);
if(check==true)
{
if(strConfirmation.IndexOf('-')==1)
{
if(strConfirmation.Length-1==nLength)
{
check=true;
}
else
{
check = false;
}
}
else
{
if(strConfirmation.Length==nLength)
{
check=true;
}
else
{
check = false;
}
}
}
return check;
}
/// <summary>
/// 用户于匹配某一指定格式
/// </summary>
/// <param name="strConfirmation">判断的字符串</param>
/// <param name="pattern">正则表达试的编号(见上strpattern的定义)</param>
/// <returns>true匹配,false不匹配</returns>
public bool IsMatchAssignsForm(string strConfirmation,int pattern)
{
System.Text.RegularExpressions.Regex reg = new Regex(this.strPattern[pattern]);
return reg.IsMatch(strConfirmation,0);
}
/// <summary>
/// 用于匹配电话
/// </summary>
/// <param name="strConfirmation">电话号码</param>
/// <returns>true匹配,false不匹配</returns>
public bool IsMatchesTelephone(string strConfirmation)
{
System.Text.RegularExpressions.Regex reg = new Regex(this.strPattern[19]);
return reg.IsMatch(strConfirmation,0);
}
/// <summary>
/// 用于匹配IP地址
/// </summary>
/// <param name="strConfirmation">IP地址</param>
/// <returns>true匹配,false不匹配</returns>
public bool ISMatchesIP(string strConfirmation)
{
System.Text.RegularExpressions.Regex reg = new Regex(this.strPattern[15]);
return reg.IsMatch(strConfirmation,0);
}
/// <summary>
/// 用于匹配身份证
/// </summary>
/// <param name="strConfirmation">身份证号码</param>
/// <returns>true匹配,false不匹配</returns>
public bool ISMatchesIDCardNumber(string strConfirmation)
{
System.Text.RegularExpressions.Regex reg = new Regex(this.strPattern[16]);
return reg.IsMatch(strConfirmation,0);
}
/// <summary>
/// 用于匹配中国邮政编码
/// </summary>
/// <param name="strConfirmation">中国邮政编码</param>
/// <returns>true匹配,false不匹配</returns>
public bool ISMatchesZipCode(string strConfirmation)
{
System.Text.RegularExpressions.Regex reg = new Regex(this.strPattern[20]);
return reg.IsMatch(strConfirmation,0);
}
public bool ISRegularExpressionValidator(string strConfirmation)
{
System.Text.RegularExpressions.Regex reg = new Regex(this.strPattern[21]);
return reg.IsMatch(strConfirmation,0);
}
}
}
using System.Text.RegularExpressions;
namespace ElecricPowerSA.BC
{
/// <summary>
/// ConfirmationControls验证类
/// </summary>
public class ConfirmationControls
{
//构造函数
public ConfirmationControls()
{
//
// TODO: 在此处添加构造函数逻辑
//
}
//正则表达式集合
private string[] strPattern ={@"^[1-9]/d*$",//0.正整数
@"^-[1-9]/d*$ ",//1.负整数
@"^-?[1-9]/d*$",//2.整数
@"^[1-9]/d*|0$",//3.非负整数
@"^-[1-9]/d*|0$",//4.非正整数
@"^[1-9]/d*/./d*|0/./d*[1-9]/d*$",//5.正浮点数
@"^-([1-9]/d*/./d*|0/./d*[1-9]/d*)$",//6.负浮点数
@"^-?([1-9]/d*/./d*|0/./d*[1-9]/d*|0?/.0+|0)$",//7.匹配浮点数
@"^[1-9]/d*/./d*|0/./d*[1-9]/d*|0?/.0+|0$",//8.匹配非负浮点数(正浮点数 + 0)
@"^(-([1-9]/d*/./d*|0/./d*[1-9]/d*))|0?/.0+|0$",//9.匹配非正浮点数(负浮点数 + 0)
@"^[A-Za-z]+$", //10.匹配由26个英文字母组成的字符串,
@"^[A-Z]+$", //11.匹配由26个英文字母的大写组成的字符串,
@"^[a-z]+$", //12.匹配由26个英文字母的小写组成的字符串,
@"^[A-Za-z0-9]+$", //13.匹配由数字和26个英文字母组成的字符串匹配
@"^/w+$",//14.由数字26个英文字母或者下划线组成的字符串,
//---------------------特殊字符串-----------------------------------------------//
@"/d+/./d+/./d+/./d+",//15.匹配ip地址:
@"/d{15}|/d{18}",//16.匹配身份证:
@"/w+([-+.]/w+)*@/w+([-.]/w+)*/./w+([-.]/w+)*",//17.匹配Email地址的正则表达式:
@"[a-zA-z]+://[^/s]*",//18.匹配网址URL的正则表达式:
@"/d{3}-/d{8}|/d{4}-/d{7}",//19.匹配国内电话号码:
@"[1-9]/d{5}(?!/d)",//20,匹配中国邮政编码:
@"^(/d{2}|/d{4})[/-//]((0?[1-9])|(1[0-2]))[/-//]((0?[1-9])|((1|2)[0-9])|30|31)$"//日期验证
};
/// <summary>
/// 用于判断是否为空
/// </summary>
/// <param name="strConfirmation">被判断的</param>
/// <returns>true是为空,false不为空</returns>
public bool IsNull(string strConfirmation)
{
if(strConfirmation=="")
{
return true;
}
return false;
}
/// 用于判断两个是否(相等'=',大于等于'>=',小于'<')
/// </summary>
/// <param name="strConfirmation">判断</param>
/// <param name="strIs_confirmed">被判断</param>
/// <param name="Mark">符号</param>
/// <returns>true匹配的,false不匹配</returns>
public bool IsMatch(string strConfirmation,string strIs_confirmed,string Mark)
{
if(Mark=="="&&strConfirmation==strIs_confirmed)
{
return true;
}
if(Mark==">="&&strConfirmation==strIs_confirmed)
{
return true;
}
if(Mark=="<"&&strConfirmation==strIs_confirmed)
{
return true;
}
return false;
}
/// <summary>
/// 用户于匹配某一指定格式
/// </summary>
/// <param name="strConfirmation">判断的字符串</param>
/// <param name="pattern">正则表达试的编号(见上strpattern的定义)</param>
/// <param name="nLength">长度</param>
/// <returns>true匹配,false不匹配</returns>
public bool IsMatchAssignsForm(string strConfirmation,int pattern,int nLength)
{
bool check;
System.Text.RegularExpressions.Regex reg = new Regex(this.strPattern[pattern]);
check= reg.IsMatch(strConfirmation,0);
if(check==true)
{
if(strConfirmation.IndexOf('-')==1)
{
if(strConfirmation.Length-1==nLength)
{
check=true;
}
else
{
check = false;
}
}
else
{
if(strConfirmation.Length==nLength)
{
check=true;
}
else
{
check = false;
}
}
}
return check;
}
/// <summary>
/// 用户于匹配某一指定格式
/// </summary>
/// <param name="strConfirmation">判断的字符串</param>
/// <param name="pattern">正则表达试的编号(见上strpattern的定义)</param>
/// <returns>true匹配,false不匹配</returns>
public bool IsMatchAssignsForm(string strConfirmation,int pattern)
{
System.Text.RegularExpressions.Regex reg = new Regex(this.strPattern[pattern]);
return reg.IsMatch(strConfirmation,0);
}
/// <summary>
/// 用于匹配电话
/// </summary>
/// <param name="strConfirmation">电话号码</param>
/// <returns>true匹配,false不匹配</returns>
public bool IsMatchesTelephone(string strConfirmation)
{
System.Text.RegularExpressions.Regex reg = new Regex(this.strPattern[19]);
return reg.IsMatch(strConfirmation,0);
}
/// <summary>
/// 用于匹配IP地址
/// </summary>
/// <param name="strConfirmation">IP地址</param>
/// <returns>true匹配,false不匹配</returns>
public bool ISMatchesIP(string strConfirmation)
{
System.Text.RegularExpressions.Regex reg = new Regex(this.strPattern[15]);
return reg.IsMatch(strConfirmation,0);
}
/// <summary>
/// 用于匹配身份证
/// </summary>
/// <param name="strConfirmation">身份证号码</param>
/// <returns>true匹配,false不匹配</returns>
public bool ISMatchesIDCardNumber(string strConfirmation)
{
System.Text.RegularExpressions.Regex reg = new Regex(this.strPattern[16]);
return reg.IsMatch(strConfirmation,0);
}
/// <summary>
/// 用于匹配中国邮政编码
/// </summary>
/// <param name="strConfirmation">中国邮政编码</param>
/// <returns>true匹配,false不匹配</returns>
public bool ISMatchesZipCode(string strConfirmation)
{
System.Text.RegularExpressions.Regex reg = new Regex(this.strPattern[20]);
return reg.IsMatch(strConfirmation,0);
}
public bool ISRegularExpressionValidator(string strConfirmation)
{
System.Text.RegularExpressions.Regex reg = new Regex(this.strPattern[21]);
return reg.IsMatch(strConfirmation,0);
}
}
}