A.NET页面数据验证通用类_.NET概论及软件使用_黑客防线网安服务器维护基地--Powered by WWW.RONGSEN.COM.CN

A.NET页面数据验证通用类

作者:黑客防线网安ASP维护基地 来源:黑客防线网安ASP维护基地 浏览次数:0

本篇关键词:通用验证数据页面
黑客防线网安网讯:   public class PageValidate{private static Regex RegPhone = new Regex("^[0-9]+[-]?[0-9]+[-]?[0-9]$");private static Regex RegNumber = new Regex("^[0-9]+$");private static Rege...

   public class PageValidate

{

private static Regex RegPhone = new Regex("^[0-9]+[-]?[0-9]+[-]?[0-9]$");

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-]+\\.(com|net|org|edu|mil|tv|biz|info)$");//w 英文字母或数字的字符串和 [a-zA-Z0-9] 语法一样

private static Regex RegCHZN = new Regex("[\u4e00-\u9fa5]");

public PageValidate()

{

}

//数字字符串检查#region 数字字符串检查

public static bool IsPhone(string inputData)

{

Match m = RegPhone.Match(inputData);

return m.Success;

}

/**//// <summary>

/// 检查Request查询字符串的键值是否是数字,最大长度限制

/// </summary>

/// <param name="req">Request</param>

/// <param name="inputKey">Request的键值</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>

/// <returns></returns>

public static bool IsNumber(string inputData)

{

Match m = RegNumber.Match(inputData);

return m.Success;

}

/**//// <summary>

/// 是否数字字符串 可带正负号

/// </summary>

/// <param name="inputData">输入字符串</param>

/// <returns></returns>

public static bool IsNumberSign(string inputData)

{

Match m = RegNumberSign.Match(inputData);

return m.Success;

}

/**//// <summary>

/// 是否是浮点数

/// </summary>

/// <param name="inputData">输入字符串</param>

/// <returns></returns>

public static bool IsDecimal(string inputData)

{

Match m = RegDecimal.Match(inputData);

return m.Success;

}

/**//// <summary>

/// 是否是浮点数 可带正负号

/// </summary>

/// <param name="inputData">输入字符串</param>

/// <returns></returns>

public static bool IsDecimalSign(string inputData)

{

Match m = RegDecimalSign.Match(inputData);

return m.Success;

}

#endregion

//中文检测#region 中文检测

/**//// <summary>

/// 检测是否有中文字符

/// </summary>

/// <param name="inputData"></param>

/// <returns></returns>

public static bool IsHasCHZN(string inputData)

{

Match m = RegCHZN.Match(inputData);

return m.Success;

}

#endregion

//邮件地址#region 邮件地址

/**//// <summary>

/// 是否是浮点数 可带正负号

/// </summary>

/// <param name="inputData">输入字符串</param>

/// <returns></returns>

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>

/// <returns></returns>

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="inputData"></param>

/// <returns></returns>

public static string HtmlEncode(string inputData)

{

return HttpUtility.HtmlEncode(inputData);

}

/**//// <summary>

/// 设置Label显示Encode的字符串

/// </summary>

/// <param name="lbl"></param>

/// <param name="txtInput"></param>

public static void SetLabel(Label lbl, string txtInput)

{

lbl.Text = HtmlEncode(txtInput);

}

public static void SetLabel(Label lbl, object inputObj)

{

SetLabel(lbl, inputObj.ToString());

}

//字符串清理

public static string InputText(string inputString, int maxLength)

{

StringBuilder retVal = new StringBuilder();

// 检查是否为空

if ((inputString != null) && (inputString != String.Empty))

{

inputString = inputString.Trim();

//检查长度

if (inputString.Length > maxLength)

inputString = inputString.Substring(0, maxLength);

//替换危险字符

for (int i = 0; i < inputString.Length; i++)

{

switch (inputString[i])

{

case '"':

retVal.Append("&quot;");

break;

case '<':

retVal.Append("&lt;");

break;

case '>':

retVal.Append("&gt;");

break;

default:

retVal.Append(inputString[i]);

break;

}

}

retVal.Replace("'", " ");// 替换单引号

}

return retVal.ToString();

}

/**//// <summary>

/// 转换成 HTML code

/// </summary>

/// <param name="str">string</param>

/// <returns>string</returns>

public static string Encode(string str)

{

str = str.Replace("&","&amp;");

str = str.Replace("'","''");

str = str.Replace("\"","&quot;");

str = str.Replace(" ","&nbsp;");

str = str.Replace("<","&lt;");

str = str.Replace(">","&gt;");

str = str.Replace("\n","<br>");

return str;

}

 

/**//// <summary>

///解析html成 普通文本

/// </summary>

/// <param name="str">string</param>

/// <returns>string</returns>

public static string Decode(string str)

{

str = str.Replace("<br>","\n");

str = str.Replace("&gt;",">");

str = str.Replace("&lt;","<");

str = str.Replace("&nbsp;"," ");

str = str.Replace("&quot;","\"");

return str;

}

public static string SqlTextClear(string sqlText)

{

if (sqlText == null)

{

return null;

}

if (sqlText == "")

{

return "";

}

sqlText = sqlText.Replace(",", "");//去除,

sqlText = sqlText.Replace("<", "");//去除<

sqlText = sqlText.Replace(">", "");//去除>

sqlText = sqlText.Replace("--", "");//去除--

sqlText = sqlText.Replace("'", "");//去除'

sqlText = sqlText.Replace("\"", "");//去除"

sqlText = sqlText.Replace("=", "");//去除=

sqlText = sqlText.Replace("%", "");//去除%

sqlText = sqlText.Replace(" ", "");//去除空格

return sqlText;

}

#endregion

//是否由特定字符组成#region 是否由特定字符组成

public static bool isContainSameChar(string strInput)

{

string charInput = string.Empty;

if (!string.IsNullOrEmpty(strInput))

{

charInput = strInput.Substring(0, 1);

}

return isContainSameChar(strInput, charInput, strInput.Length);

}

public static bool isContainSameChar(string strInput, string charInput, int lenInput)

{

if (string.IsNullOrEmpty(charInput))

{

return false;

}

else

{

Regex RegNumber = new Regex(string.Format("^([{0}])+$", charInput));

//Regex RegNumber = new Regex(string.Format("^([{0}]{{1}})+$", charInput,lenInput));

Match m = RegNumber.Match(strInput);

return m.Success;

}

}

#endregion

//检查输入的参数是不是某些定义好的特殊字符:这个方法目前用于密码输入的安全检查#region 检查输入的参数是不是某些定义好的特殊字符:这个方法目前用于密码输入的安全检查

/**//// <summary>

/// 检查输入的参数是不是某些定义好的特殊字符:这个方法目前用于密码输入的安全检查

/// </summary>

public static bool isContainSpecChar(string strInput)

{

string[] list = new string[] { "123456", "654321" };

bool result = new bool();

for (int i = 0; i < list.Length; i++)

{

if (strInput == list[i])

{

result = true;

break;

}

}

return result;

}

#endregion

}

 

    黑客防线网安服务器维护方案本篇连接:http://www.rongsen.com.cn/show-14208-1.html
网站维护教程更新时间:2012-03-30 05:30:23  【打印此页】  【关闭
我要申请本站N点 | 黑客防线官网 |  
专业服务器维护及网站维护手工安全搭建环境,网站安全加固服务。黑客防线网安服务器维护基地招商进行中!QQ:29769479

footer  footer  footer  footer