• 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对这些有自己的判断

  • 相关阅读:
    【Java】Java中的集合框架、泛型
    【Java】Java中日期获取、数值精度、异常处理
    【Java】包装类、及字符序列CharSequence接口
    【微服务】Docker环境安装及卸载教程-持续更新中
    【Java】Stream流式编程实战
    【Java】Lambda表达式详解及实战
    【Java】Java中I/O流使用及详解
    加入博客园的第八个月
    Structs复习 Structs标签
    Structs复习 OGNL
  • 原文地址:https://www.cnblogs.com/xyzhuzhou/p/2393960.html
Copyright © 2020-2023  润新知