public class PageValidate
{
private static Regex RegNumber = new Regex(^[0-9]+$);
private static Regex RegNumberSign = new Regex(^[+-][0-9]+$);
private static Regex RegDecimal = new Regex(^[0-9]+[.][0-9]+$);
private static Regex RegDecimalSign = new Regex(^[+-][0-9]+[.][0-9]+$); //等价于^[+-]d+[.]d+$
private static Regex RegEmail = new Regex(^[w-]+@[w-]+.(comnetorgedumiltvbizinfo)$);//w 英文字母
或数字的字符串,和 [a-zA-Z0-9] 语法一样
private static Regex RegCHZN = new Regex([u4e00-u9fa5]);
public PageValidate()
{
}
#region 数字字符串检查
summary
检查Request查询字符串的键值,是否是数字,最大长度限制
summary
param name=reqRequestparam
param name=inputKeyRequest的键值param
param name=maxLen最大长度param
returns返回Request查询字符串returns
public static string FetchInputDigit(HttpRequest req, string inputKey, int maxLen)
{
string retVal = string.Empty;
if(inputKey != null && inputKey != string.Empty)
{
retVal = req.QueryString[inputKey];
if(null == retVal)
retVal = req.Form[inputKey];
if(null != retVal)
{
retVal = SqlText(retVal, maxLen);
if(!IsNumber(retVal))
retVal = string.Empty;
}
}
if(retVal == null)
retVal = string.Empty;
return retVal;
}
summary
是否数字字符串
summary
param name=inputData输入字符串param
returnsreturns
public static bool IsNumber(string inputData)
{
Match m = RegNumber.Match(inputData);
return m.Success;
}
summary
是否数字字符串可带正负号
summary
param name=inputData输入字符串param
returnsreturns
public static bool IsNumberSign(string inputData)
{
Match m = RegNumberSign.Match(inputData);
return m.Success;
}
summary
是否是浮点数
summary
param name=inputData输入字符串param
returnsreturns
public static bool IsDecimal(string inputData)
{
Match m = RegDecimal.Match(inputData);
return m.Success;
}
summary
是否是浮点数可带正负号
summary
param name=inputData输入字符串param
returnsreturns
public static bool IsDecimalSign(string inputData)
{
Match m = RegDecimalSign.Match(inputData);
return m.Success;
}
#endregion
#region 中文检测
summary
检测是否有中文字符
summary
param name=inputDataparam
returnsreturns
public static bool IsHasCHZN(string inputData)
{
Match m = RegCHZN.Match(inputData);
return m.Success;
}
#endregion
#region 邮件地址
summary
是否是浮点数可带正负号
summary
param name=inputData输入字符串param
returnsreturns
public static bool IsEmail(string inputData)
{
Match m = RegEmail.Match(inputData);
return m.Success;
}
#endregion
#region 其他
summary
检查字符串最大长度,返回指定长度的串
summary
param name=sqlInput输入字符串param
param name=maxLength最大长度param
returnsreturns
public static string SqlText(string sqlInput, int maxLength)
{
if(sqlInput != null && sqlInput != string.Empty)
{
sqlInput = sqlInput.Trim();
if(sqlInput.Length maxLength)按最大长度截取字符串
sqlInput = sqlInput.Substring(0, maxLength);
}
return sqlInput;
}
summary
字符串编码
summary
param name=inputDataparam
returnsreturns
public static string HtmlEncode(string inputData)
{
return HttpUtility.HtmlEncode(inputData);
}
summary
设置Label显示Encode的字符串
summary
param name=lblparam
param name=txtInputparam
public static void SetLabel(Label lbl, string txtInput)
{
lbl.Text = HtmlEncode(txtInput);
}
public static void SetLabel(Label lbl, object inputObj)
{
SetLabel(lbl, inputObj.ToString());
}
#endregion
}