常见正则表达式和用法

1.注册时验证注册密码的强度:

复制代码
复制代码
 public object IsValidPasswordStrength(string id, string value)
        {
            bool success = true;
            string msg = string.Empty;

            switch (SysGlobalInfo.PasswordStrength)
            {
                case PasswordStrength.Low:
                    Match m1 = new Regex(@"^(?:\d+|[a-zA-Z]+|[!@#$%^&*]+)$").Match(value);
                    if (!m1.Success)
                    {
                        success = false;
                        msg = "密码强度不够!密码组成规则 =(纯数字,纯字母,纯特殊字符)";
                    }
                    break;
                case PasswordStrength.Medium:
                    Match m2 = new Regex(@"^(?![a-zA-z]+$)(?!\d+$)(?![!@#$%^&*]+$)[a-zA-Z\d!@#$%^&*]+$").Match(value);
                    if (!m2.Success)
                    {
                        success = false;
                        msg = "密码强度不够!密码组成规则 =(字母+数字,字母+特殊字符,数字+特殊字符)";
                    }
                    break;
                case PasswordStrength.High:
                    Match m3 = new Regex(@"^(?![a-zA-z]+$)(?!\d+$)(?![!@#$%^&*]+$)(?![a-zA-z\d]+$)(?![a-zA-z!@#$%^&*]+$)(?![\d!@#$%^&*]+$)[a-zA-Z\d!@#$%^&*]+$").Match(value);
                    if (!m3.Success)
                    {
                        success = false;
                        msg = "密码强度不够!密码组成规则 =(字母+数字+特殊字符)";
                    }
                    break;
            }

            return new { valid = success, message = success ? string.Empty : msg };
        }
复制代码

 

复制代码

 2.常用的正则表达式

复制代码
<script src="scripts/jquery-1.4.1.js" type="text/javascript"></script>  
<script language="javascript" type="text/javascript">  
  /** 
   * 定义验证各种格式类型的正则表达式对象 
  */  
  var Regexs = {  
    email: (/^[0-9a-z][0-9a-z\-\_\.]+@([0-9a-z][0-9a-z\-]*\.)+[a-z]{2,}$/i),//邮箱  
    phone: (/^0[0-9]{2,3}[2-9][0-9]{6,7}$/),                //座机手机号码  
    ydphpne: (/^((13[4-9])|(15[012789])|147|182|187|188)[0-9]{8}$/),//移动手机号码  
    allphpne: (/^((13[0-9])|(15[0-9])|(18[0-9]))[0-9]{8}$/),//所有手机号码  
    ltphpne: (/^((13[0-2])|(15[56])|(186)|(145))[0-9]{8}$/),//联通手机号码  
    dxphpne: (/^((133)|(153)|(180)|(189))[0-9]{8}$/),       //电信手机号码  
    url: (/^http:\/\/([0-9a-z][0-9a-z\-]*\.)+[a-z]{2,}(:\d+)?\/[0-9a-z%\-_\/\.]+/i),//网址  
    num: (/[^0-9]/),  //数字  
    cnum: (/[^0-9a-zA-Z_.-]/),  
    photo: (/\.jpg$|\.jpeg$|\.gif$/i),//图片格式  
    row: (/\n/ig)  
  };  
  /** 
    * @return 若符合对应的格式,返回true,否则返回false 
  */  
  function chkFormat(str, ftype) {  
    var nReg = Regexs[ftype];  
    if (str == null || str == "") return false; //输入为空,认为是验证通过  
    if (ftype == 'num') {  
      if (!nReg.test(str) && !chkChinese(str)) {//10.23 tenfy 必须为数字且不能有中文  
            return true;  
          } else { return false; }  
      }  
      if (!nReg.test(str)) {  
        return true;  
      } else {  
        return false;        
    }  
  };  
  function chkChinese(s) {  
    for (var i = 0; i < s.length; i++) {  
      if (s.charCodeAt(i) > 255) return true;  
    }  
    return false;  
  };  
</script>  
复制代码

 

posted @   EvanWangs  阅读(277)  评论(0编辑  收藏  举报
努力加载评论中...
点击右上角即可分享
微信分享提示