正则表达式语法的简单学习

正则表达式直接量被定义为包含在一对2斜杠(/)之间的字符.

 

1.直接量字符

字母数字,常见转移字符\n等.

 

2.字符类

将单独的直接量字符放进方括号内就可以组成字符类.一个字符类和它所包含的任意字符都匹配.

字符      匹配 

[...]        位于括号内的任意字符

[^...]       不在括号之中的任意字符

.            除换行符和其他unicode行终止符之外的任意字符

\w         任何ASCII单字字符,等价于[a-zA-Z0-9_]

\W        任何非ASCII单字字符,等价于[^a-zA-Z0-9_]

\s          任何unicode空白符

\S         任何非unicode空白符的字符.

\d         任何ASCII数字,等价于[0-9]

\D         任何非ASCII数字,等价于[^0-9]

[\b]       退格直接量(特例)

 

3.重复

正则表达式的重复字符

字符      含义

{n,m}     匹配前一项至少n次,但是不超过m次

{n,}        匹配前一项n次,或更多次

{n}         匹配前一项恰好n次

?           匹配前一项0次或1次,也就是说前一项可选.等价于{0,1}

+           匹配前一项1次或多次.等价于{1,}

*            匹配前一项0次或多次.等价于{0,}

 

4.选择,分组和引用

字符"|"用于分隔供选择的字符.  /\d{3}|[a-z]{4}/匹配的是三位数字或四个小写字母.

正则表达式的选择,分组和引用字符

字符      含义

|         选择.

(...)     组合.

(?:...)   只组合.不记忆与该组匹配的字符.

\n        和第n个分组第一次匹配的字符相匹配.组是括号中的字表达式.组号是从左到右计数的左括号数.

 

5.指定匹配的位置

正则表达式的锚字符

字符      含义

^            匹配字符串的开头,在多行检索中,匹配一行的开头

$           匹配字符串的结尾,在多行检索中,匹配一行的结尾

\b          匹配一个词语的边界.

\B          匹配非词语边界的位置.

(?=p)     正前向声明,要求接下来的字符都与模式p匹配,但是不包括匹配模式中的那些字符.

(?!p)      反前向声明,要求接下来的字符不与模式p匹配.

 

6.标志

正则表达式的标志,说明高级模式匹配的规则.和其他的正则表达式语法不同,标志是在"/"符号之外说明的,即它们不出现在两个斜杠之间,而是位于第二个斜杠之后.

正则表达式的标志

字符      含义

i            执行不分大小写的匹配

g           执行一个全局的匹配.简而言之,即找到所有匹配,不是在找到第一个之后就停止

m          多行模式,^匹配一行的开头和字符串的开头,$匹配一行的结尾或字符串的结尾

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值