正则表达式学习(二)

2018-11-06  本文已影响0人  欢喜的看着书

接着上期的正则学习(一)https://www.jianshu.com/p/0b0fda627adc, 我接着写 正则学习(二)

三 几个重要的概念

1 、子表达式

2 、捕获

1541490056(1).jpg

3、 反向引用

1541490679(1).jpg

4、几个重要概念的应用场景

var str = "asdasdas3232asdqwdq5858vfdcasd6767asdas8585dasx";
var reg = /(\d)/(\d)\1\2/gi;
console.log(str.match(reg));
//输出结果: ["3232", "5858", "6767", "8585"]

5、几个练习题

//答: 
var reg = /\d\d\d/gi;
//答:
var reg = /(\d)(\d)\2\1/gi;
//答:
var reg = /([A-Z])\1([A-Z])\2/g;
//注意 这个表达式没有i i的意思是忽略大小写
//答:
var reg = /([0-9a-z])\1\1\1\/gi;

四、编写正则表达式

1、正则表达式的组成

2、编写正则表达式三步走

3、查什么(匹配符)

匹配符:字符串匹配符用于匹配某个或某些字符
在正则表达式中,通过一对中括号括起来的内容,我们就称之为“字符簇”。字符簇代表的是一个范围,但是匹配时,只能匹配某个固定的结果

[a-z] : 匹配字符a到字符z之间的任一字符
[A-Z] : 匹配字符A到字符Z之间的任一字符
[0-9] : 匹配数组0到数字9之前的任一数字
[0-9a-z] : 匹配数字0到数字9或字符a到字符z之间的任一字符
[0-9a-zA-Z] : 匹配数字0到数字9或字符a到字符z或字符A到字符Z之间的任一字符
[abcd]  :  匹配字符a或字符b或字符c或字符d
[1234]  : 匹配数字1 或 数字2 或 数字3 或 数字4
[^a-z] : 匹配除字符a到字符z以外的任一字符
[^0-9] : 匹配除数字0到数字9以外的任一字符
[^abcd] : 匹配除a、b、c、d以外的任一字符
\d :匹配一个数字字符,还可以使用[0-9]
\D :匹配一个非数字字符,还可以使用[^0-9]
\w :匹配包括下划线的任何单词字符,还可以使用[0-9a-zA-Z_]
\W :匹配任何非单词字符,还可以使用[^\w]
\s :匹配任何空白字符,space缩写
\S :匹配任何非空白字符,还可以使用[^\s]
.(我是一个点号)  :匹配除 "\n" 之外的任何单个字符
[\u4e00-\u9fa5] :匹配中文字符中的任一字符

//todo 先写到这里 余下慢慢写

上一篇下一篇

猜你喜欢

热点阅读