字符组让这个工作变得容易起来 。这里 , 我们用:
hahaha haa hah!作为例句 , 了解一下字符组的使用吧:
- 用圆括号表示字符组 , 如(abc) , 见下例:
/(ha) /g
匹配结果:
hahaha haa hah!用1表示正则表达式里的第一个字符组 , 2表示正则表达式里第二个字符组 , 3、4依次类推:
(w)a1
匹配结果:
hah dad bad dab gag gab
说明:
此例中 , 当(w)匹配的结果为字符h , 则1就表示h 。1的匹配结果需要参考第一个字符组 , 即(w)的结果 。
1pt 2px 3em 4px1.可以用(?=ABC)、(?!ABC)的表达式 , 表示前瞻判断:
- 正向前瞻判断 , 示例如下:
表示在字符”px”前的数字:
/d(?=px)/g
匹配结果:
1pt 2px 3em 4px
说明:
此处的(?=px)表示一个占位符 , 而非具体的字符负向前瞻判断 , 示例如下:
表示不在字符”px”前的数字:
/d(?!px)/g
匹配结果:
1pt 2px 3em 4px
说明:
此处的(?!px)表示一个占位符 , 而非具体的字符
- 正向回顾判断 , 示例如下:
表示在字符”p”后的罗马字符:
/(?<=p)w/g
匹配结果:
1pt 2px 3em 4px负向回顾判断 , 示例如下:
表示不在字符”p”后的罗马字符:
/(? 匹配结果:
1pt 2px 3em 4px
b be bee beer beers beeeee
- 用数字表示的数量词:
- {n}表示匹配n个字符:
/e{2}/g
匹配结果:
b be bee beer beers beeeee{n,}表示匹配n个以上字符:
/e{2,}/g
匹配结果:
b be bee beer beers beeeee{n,m}表示匹配n到m个字符:
/e{2,3}/g
匹配结果:
b be bee beer beers beee ee
- *表示0个或多个字符:
/e*/g
匹配结果:
b be bee beer beers beeeee表示1个或多个字符:
/e /g
匹配结果:
b be bee beer beers beeeee?表示0个或1个字符:
/b?/g
匹配结果:
b be bee beer beers beeeee关于*和 差别的说明:
有些小伙伴可能会困惑在匹配时*和 都是匹配多个 , 但匹配0个和1个的差别是什么?有这个问题的小伙伴可以看下例是如何匹配字符串abc:
/a.*bc/g能匹配上述字符串;
/a. bc/g不能匹配上述字符串 , 因为这个表达式不允许a和b没有字符;
- . 表示用贪婪模式进行匹配:
- caused by是短语么?介词by在这里是什么用法呀?顺便分析一下这句话的语法哦
- 汉语语法分析
- 汉语语法的演变有几种情况
- Python中的lambda表达式如何使用?lambda匿名函数的使用方法
- 什么是语法错误什么是逻辑错误 什么是逻辑错误什么是语法错误
- 氯酸钾制氧气的化学文字表达式,
- 爱我你怕了吗 韩文版
- 高斯定理的表达式
- python正则表达式怎么使用 python使用正则表达式
- InputBox函数语法参数 清空input文本框的值
/bw /g
匹配结果:
b be bee beer beers beeeee. ?表示用非贪婪模式(懒惰模式)进行匹配