正则表达式

[ ] :需要匹配的字符     { } : 需要匹配的数量      ( ) : 用来进行规则的分组


量词:    + : 最少一个       * : 0个或多个    ? : 0个或1个
 
修饰符:  i : 忽略大小写    g : 执行全局匹配
 
 \d : 表数字[0-9]   \D : 非数[^0-9] ^表取反    \w : 英文,数字,下划线 [a-zA-Z0-9_]  \W : 与\w相反   \s : 空格  \S : 非空格 
 
定义方式 : 1 new RegExp ();   2  var regExp = /^[ 规则]$/;
 
示例:     var regExp =  /^[0-9]+$/;     ^ : 开始  : 结尾      规则:[0-9] : 表数字 等价于\d(小写)
 
方法: 1 test () : 找到指定字符串,返回布尔型   注: test() 是RgeExp 的方法
         var regExp = /^[abc]$/;                          var regExp = /^[abc]+$/;
         alert(regExp.test("a"));    返回 : true        alert(regExp.test("aa"));    返回 : true 
 
         2 match() : 将匹配的内容放到数组中;(使用match方法时去掉^$)
         var regExp = /[0-9]+/g;
         var str = "abf3sf789sfd2434db";
         console.log(str.match(regExp));     
         结果为:( "3","789","2434")
 
         3 replace () : 替换 
 
              var textValue = document . form.text.value;   一个表单里某个文本框的值
              var regExp = /某个文字/g;
               document.form.text2.value = textValue.replace(regExp,"*");    将某个文字替换成*.
 
示例:
       验证手机号码:138|139|186|151 12345678
        var regExp = /^(138|139|186|151)\d{8}$/;
 
       验证座机号码:0818(010)-12345678-1234(123)
        var regExp = /^(\d{3,4}\-)?\d{8}(\-\d{3,4})$/;
 
       邮箱: 
       var regExp = /^[a-z0-9_]+@[a-z0-9]+\.[a-z]+$/;
 
       身份证: 
       var regExp = /^(\d{15}|\d{17}[0-9x])$/;
 
       判断年龄:18-60
       var regExp = /^(1[8-9]|[2-5][0-9]|60)$/;

 

posted @ 2015-09-13 23:07  刘~燕  阅读(112)  评论(0编辑  收藏  举报