笔记1:JavaScript正则表达式(直接字符量、字符类、重复、非贪婪重复、选择分组和引用)

Javascript中的正则表达式用RegExp对象表示。
1.定义形式:(1)/表达式/,包含在一对斜杠间;(2)用RegExp定义,var pattern = RegExp("s$");
2."$"表示结束符,/s$/表示以s结尾的字符串。
一、直接量字符
1.匹配非字母字符时需要反斜杠\转义,正则中的直接量字符:
a.字母和数字匹配自身
b.\o:NUL字符,\u0000;
c.\t:制表符,\u0009;
d.\n:换行符,\u000A;
e.\v:垂直制表符,\u000B;
f.\f:换页符,\u000C;
g.\r:回车符,\u000D;
h.\xnn:十六进制数nn指定的拉丁字符,如,\x0A等于\n;
i.\uxxx:十六进制数xxxx指定的Unicode字符,如,\u0009等价于\t;
j.\cX:控制字符^X,如,\cJ等价于换行符\n。
2.某些数字字母字符加\有特殊意义,字符如果不知道是否可以加就都加。匹配反斜杠本身要加反斜杠。
二、字符类
直接量放在[]内变成字符类,一个字符类可以匹配它所包含的任意字符。
1.“^”用来定义否定,即匹配所有不包含在方括号内的字符,如/[^abc]/匹配abc外的所有字符。
2./[a-z]/匹配所有拉丁字母表的小写字母。
2./[a-zA-Z0-9]/匹配拉丁字母表任何大小写字母和数字。
3.正则表达式的字符类:
a.[...]:方括号内的任意字符。
b.[^…]:不在方括号内的任意字符。
c. . :除换行符和其他unicode行终止符外的任意字符。
d.\w:任何ASCII组成的单词,等价于/[a-zA-Z0-9]/。
e.\W:任何不是ASCII组成的字符,等价于/[a-zA-Z0-9]/。
f.\s任何Unicode空白符。
g.\S:任何非Unicode空白符的字符。
h.\d:任何ASCII数字,等价于[0-9]。
i.\D:除了ASCII数字外的任何字符,等价于[^0-9]。
j.[\b]:退格直接量(特例)。
三、重复
重复字符语法:
a.{n,m}:匹配前一项至少n次但不能超过m次。
b.{n,}:匹配前一项次或者更多次。
c.{n}:匹配前一项n次。
d. ? :匹配前一项0次或者1次,等价于前一项可选,{0,1}。
e. + :匹配前一项1次或者多次,等价于{1,}。
f. * :匹配前一项0次或者多次,等价于{0,}。
四、非贪婪重复
前一种是尽可能多的匹配,称之为贪婪重复。非贪婪重复是匹配尽可能少的,语法为在待匹配字符后加“?”,如 ??、+?。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值