C#部分正则判断

//验证用户输入的字符串中时候只含有数字或字母,汉字  bool IsValidString(string strIn)   {    return Regex.IsMatch(strIn,@"^[A-Za-z0-9\u4e00-\u9fa5]+$");   } //验证电子邮件  bool IsValidEmail(string strIn)   {    return
Regex.IsMatch(strIn,
@"^([\w-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$");   } //验证用户输入的字符串中时候只含有数字或字母  bool IsValidString(string strIn)   {    return Regex.IsMatch(strIn,@"^[A-Za-z0-9]+$");   } ///<summary>   /// 判断密码   ///</summary>   ///<param name="PassWord"></param>   ///<returns></returns>  publicstaticbool IsValidPassWord(string PassWord)   {    return Regex.IsMatch(PassWord, @"^(\w){6,20}$");   }
///<summary>   /// 判断电话/传真   ///</summary>   ///<param name="Tel"></param>   ///<returns></returns>  publicstaticbool IsValidTel(string Tel)   {    return Regex.IsMatch(Tel, @"^[+]{0,1}(\d){1,3}[ ]?([-]?((\d)|[ ]){1,12})+$");   }
///<summary>   /// 判断手机   ///</summary>   ///<param name="Mobil"></param>   ///<returns></returns>  publicstaticbool IsValidMobil(string Mobil)   {    return Regex.IsMatch(Mobil, @"^(\d)+[-]?(\d){6,12}$");   }
///<summary>   /// 邮政编码   ///</summary>   ///<param name="Zip"></param>   ///<returns></returns>  publicstaticbool IsValidZip(string Zip)   {    return Regex.IsMatch(Zip, @"^[a-z0-9 ]{3,12}$");   }
///<summary>   /// 判断日期   ///</summary>   ///<param name="Date"></param>   ///<returns></returns>  publicstaticbool IsValidDate(string Date)   {    bool bValid=Regex.IsMatch(Date, @"^[12]{1}(\d){3}[-][01]?(\d){1}[-][0123]?(\d){1}$");    return (bValid && Date.CompareTo("1753-01-01")>=0);
  }
//判断整型  /*public static bool IsValidInt(string Int)   {    return Regex.IsMatch(Int, @"^[1-9]{1}[0-9]{0,6}$");   }*/
 
///<summary>   /// 判断只能输字母   ///</summary>   ///<param name="EnName"></param>   ///<returns></returns>  publicstaticbool IsValidEnName(string EnName)   {    return Regex.IsMatch(EnName, @"[a-zA-Z]");   }
//去除输入的字符串中不合法的<>\"'%;()&  privatestring SanitizeInput(string input)   {    Regex badCharReplace =new Regex(@"^([<>""'%;()&])$");    string goodChars = badCharReplace.Replace(input, "");    return goodChars;   }
//用正则表达式过滤脚本publicstring wipeScript(string html) { System.Text.RegularExpressions.Regex regex1 =new
System.Text.RegularExpressions.Regex(
@"<script[\s\S]+</script
*>
",System.Text.RegularExpressions.RegexOptions.IgnoreCase); System.Text.RegularExpressions.Regex regex2 =new
System.Text.RegularExpressions.Regex(
@" href *= *[\s\S]*script
*:
",System.Text.RegularExpressions.RegexOptions.IgnoreCase); System.Text.RegularExpressions.Regex regex3 =new
System.Text.RegularExpressions.Regex(
@"
on[\s\S]*=
",System.Text.RegularExpressions.RegexOptions.IgnoreCase); System.Text.RegularExpressions.Regex regex4 =new
System.Text.RegularExpressions.Regex(
@"<iframe[\s\S]+</iframe
*>
",System.Text.RegularExpressions.RegexOptions.IgnoreCase); System.Text.RegularExpressions.Regex regex5 =new
System.Text.RegularExpressions.Regex(
@"<frameset[\s\S]+</frameset
*>
",System.Text.RegularExpressions.RegexOptions.IgnoreCase); html = regex1.Replace(html, ""); //过滤<script></script>标记html = regex2.Replace(html, ""); //过滤href=javascript: (<A>) 属性html = regex3.Replace(html, " _disibledevent="); //过滤其它控件的on...事件html = regex4.Replace(html, ""); //过滤iframehtml = regex5.Replace(html, ""); //过滤framesetreturn html; }
//对输入的字符串是否含有<script></script>判断publicbool IsValidScript(string html) { return Regex.IsMatch(html,@"<script[\s\S]+</script *>"); }
//对输入的字符串是否含有href=javascript: (<A>)字符判断publicbool IsValidJavascript(string html) { return Regex.IsMatch(html,@" href *= *[\s\S]*script *:"); }
//对输入的字符串是否含有on...事件判断publicbool IsValidOn(string html) { return Regex.IsMatch(html,@" on[\s\S]*="); }
//对输入的字符串是否含有iframe判断publicbool IsValidiframe(string html) { return Regex.IsMatch(html,@"<iframe[\s\S]+</iframe *>"); }
//对输入的字符是否含有frameset判断publicbool IsValidFrameset(string html) { return Regex.IsMatch(html,@"<frameset[\s\S]+</frameset *>"); } 但是好像.net对这些有自己的判断

posted @ 2012-03-13 15:47  xyzhuzhou  阅读(513)  评论(0编辑  收藏  举报