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
}