正则表达式

        /* i执行对大小写不敏感的匹配 */

        /* g执行全局匹配(查找所有匹配而非找到第一个后停止) */

        //let str='abc1a2c3b';

        //console.log(str.match(/a/g));

        /* [a-z] 查找任何从小写a到小写z的字符 */

        /* [^abc]查找除了括号内的任意字符

           写在[]里的表示除了,^[]表示以什么开头/^[abc]/  */

        /* []$表示以什么结尾/[abc]$/  */

        /* +表示匹配前面字符串一次或者多次 */

        /* 纯26个英文小写字母可以匹配 */

        /* let reg=/^[a-z]+$/;

        console.log(reg.test('abcccc')); */

        /* 匹配一串字符,包括多个英文字母,包括大小写和数字 */

        //let a=/^[a-zA-Z0-9]+$/

        //console.log(a.test('asd12AD'));

        /* *表示匹配0次或者多次 */

        /* ?匹配0次或者1次 */

        /* {n} 匹配确定的n次*/

        /* {n,}至少匹配n次 */

        /* {n,m}至少匹配n次,最多匹配m次 */

        //let reg=/^[a-zA-Z0-9]{6,}$/;

        //console.log(reg.test('baasda12121'));

        /* 构造函数的方式 */

        /* reg是构造函数RegExp new出来的实例化对象 */

        //let reg=new RegExp(/[a-z]/,'i');

        /* 正则的方法test() 可以判断你输入的字符串是否符合要求

           符合就返回true,不符合就返回false */

        /* 用字面量的方式来表示正则 */

        /* let reg=/[a-z]/i;

        console.log(reg.test('b')); */

元字符

/*  \w匹配数字,字母,下划线 */

        //let reg = /^\w+$/;

        //console.log(reg.test('__abc123'));

         /*  \W匹配非数字,字母,下划线 */

         //let reg=/^\W+$/;

         //console.log(reg.test('**)'));

         /* \d 匹配数字 */

         //let reg=/^\d+$/;

         //console.log(reg.test('222'));


         /* \D 匹配非数字 */

         //let reg=/^\D+$/;

         //console.log(reg.test('ads'));

         /* \s 匹配空白字符(空格,换行\n,回车\r),空字符串不行 */

         //let reg=/^\s+$/;

         //console.log(reg.test('  \n\r'));

         /* \S 匹配非空白字符(空格,换行\n,回车\r),空字符串不行 */

         //let reg=/^\S+$/;

         //console.log(reg.test('萨达撒多'));

         /* \n 只匹配\n */

判断是否符合正则

正则校验的两个方法 

     test符合返回true ,不符合返回false

       exec 符合返回一个数组,不符合返回null

        let reg=/^[a-z]+$/g;

        document.write(reg.exec('abc'));

string类支持正则的方法

//let str='abc';

        /* 返回匹配的第一个字符串的下标,否则返回-1 */

        //document.write(str.search(/[a-z]/));

        /* 如果没有任何匹配的文本,返回null

           否则他将返回一个数组(依赖于是否具有全局标志) */

        //let str='qwe1234abc';

        //console.log(str.match(/[0-9]/g)); 返回分开的数组

        //console.log(str.match(/[0-9]/));  返回整个的数组

        /* 返回一个新的字符串 */

        //let str='abc123qwe';

        //let newstr=str.replace(/[0-9]/g,'oo');

        //console.log(newstr);

        let str='a1b2c3d';

        //str.split('-');  //匹配不到会把整个字符串当成数组返回

        /* 以数字为分隔符分隔 */

        /* split第2个参数是分割成几个数组元素的意思 */

        console.log(str.split(/[0-9]/,2));

你可能感兴趣的:(正则表达式)