JS-正则表达式(基本语法、test、exec、\d\D\w\W\s\S .)

二,正则表达式
    1,什么是正则表达式
        是一种规范,对字符串格式进行验证的规范
        不用自己写,常用的正则表达式,网上都有,只要会使用就可以

    2,定义方法
        字面量     var reg = /正则表达式/  常用方法
        构造函数   var reg = new RegExp('正则表达式')

    3,正则方法
        正则表达式.test(字符串)     验证字符串是否符合规范

    4,基本语法
        元字符:  小写的表示 只要有其中一个出现就可,大写表只要出现它没有的即只要取非就可
            \d   数字
            \D   非数字

            \w   数字,字母,下划线
            \W   非 数字,字母,下划线

            \s   空格
            \S   非空格

            .    非换行

        边界符
            ^    开始
            $    结束
        
        限定符
            *      0 --- 正无穷
            +      1 --- 正无穷
            ?      0 --- 1
            {n}    只能是n个
            {n,}   至少是n个
            {n,m}  n至m个

        特殊符号
            \      解析元字符和转义符
            |      逻辑或
            ()     作为整体执行
            []     只要是其中一个数值,就符合
            a-b    a至b范围之内的
            [^]    对内容取反
            
        写在表达式之外的
            /正则/i    不区分大小写
            /正则/g    全局匹配

    5,和正则表达式相关联的函数
        search()      
            默认区分大小写,使用正则,不区分大小写
        不区分大小写    变量.search(/正则/i)

        match()       
            默认只捕获第一个符合的内容,正则表达式捕获所有符合的内容
        全局匹配    变量.match(/正则/g)

        replace()     
            默认只替换第一个符合的内容,正则表达式替换所有符合的内容
        全局匹配    变量.replace( /正则/g , 要替换写入的内容)

一.正则表达式
什么是正则表达式

对字符串内容,进行格式和内容的验证

对于正则表达式,我们不用自己去写,所有常用的正则表达式,在网上都可以搜到

我们只需要能看懂,会使用

所有的计算机语言,正则表达式,都是相同的,通用

正则表达式的基本语法

1,字面量(常用)
使用 // 来包裹表达式内容
var 变量 = /正则表达式/

2,构造函数
var 变量 = RegExt(‘正则表达式’);

正则表达式的使用方法

1,验证
判断字符串内容是否符合正则表达式的规范
执行结果是 布尔类型
语法 : 正则表达式.test(‘字符串内容’);

2,捕获
捕获获取字符串中符合正则表达式规范的内容
执行结果是捕获获取到的符合规范的字符串内容
语法 : 正则表达式.exec(‘字符串内容’)

二.正则表达式之常用语法规范

正则表达式,常用语法规范

正则表达式中,不要随便写空格,因为空格也会作为验证格式的一部分

1,元字符
使用一些符号,来表示规范

\d    表示数值,数字,只要有数字即可,不用都是数字
\D    表示非数字,只要有不是数字的就可,不用都是非数字

\w    表示数字,字母,下划线,只要有其中一个就可
\W    表示非数字,字母,下划线,只要有不是字母或数字下划线就可

\s    表示空格,只要有空格就可
\S    表示非空格  只要有不是空格的就可

.     表示非换行
        字符串中的换行,使用 转义符 \n 表示

提示 正则表达式和转义符,都是 \内容的形式
        JavaScript会自动识别,如果是 \内容 符合正则表达式,就按照正则表达式来执行
                                        符合转义符,就按照转义符的形式执行
        正则表达式和转义符不会冲突


// 只要有数字即可,不用都是数字
var reg1 = /\d/ ;

console.log(reg1.test('123456')) ;   →  true
console.log(reg1.test('abcd')) ;   →  false
console.log(reg1.test('1234abcd')) ;   →  true
    

var reg2 = /\D/;

console.log(reg2.test('123456')) ;   →  false
console.log(reg2.test('abcd')) ;   →  true
console.log(reg2.test('1234abcd')) ;   →  true
console.log(reg2.test('!@#$%^')) ;   →  true

var reg3 = /\w/;

console.log( reg3.test('123avbc_') );   →  true
console.log( reg3.test('!@#$%^') );   →  false
console.log( reg3.test('1234!@#$%^') );   →  true

var reg4 = /\W/;

console.log( reg4.test('123avbc_') );   →  false
console.log( reg4.test('!@#$%^') );   →  true
console.log( reg4.test('1234!@#$%^') );   →  true


var reg5 = /\s/;
console.log( reg5.test('      ') );   →  true
console.log( reg5.test('312斤kfjisa') );   →  false
console.log( reg5.test('312斤 kfjisa') );   →  true

var reg6 = /\S/;
console.log( reg6.test('      ') );   →  false
console.log( reg6.test('312斤kfjisa') );   →  true
console.log( reg6.test('312斤 kfjisa') );   →  true


var reg7 = /./;

console.log( reg7.test('\n') );   →  false

 


————————————————
版权声明:本文为CSDN博主「咩有猫腻.」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:JS-正则表达式(基本语法、test、exec、\d\D\w\W\s\S .)

posted @ 2022-03-23 19:16  rainbow70626  阅读(348)  评论(0编辑  收藏  举报