正则表达式初探

1. 正则表达式(Regexps)表达式(expressions)量词(quantifiers)断言(assertions)组成。

2. 如:[0-9]{1, 2},其中[0-9]就是表达式,表示0-9中任意一个数字,{1, 2}就是量词部分,表示表达式出现1~2次;

3. 如:^[0-9]{1, 2}$,其中^就是断言,表示必须从字符串开始进行匹配,$也是断言,表示必须匹配到字符串结尾;

4. 对于常用的表达式,可用一些符号表示,例如 \d 可替代[0-9];而{1, 1}可由表达式本身代替,{0, 1}表示可选的,可由 ?代替,因此正则表达式:^[0-9]{1, 2}$,也可以表达为:^\d\d?$ 

5. 正则表达式中的表达式可以是各种字符和字符组,而一些常用的字符集可以使用一些缩写来表示,在使用时候可再具体查找;

6. 正则表达式中的量词的使用情况如下表所示,其中E代表一个表达式,一个表达式可以是一个字符,或者一个字符集的缩写,或者在方括号中的一个字符集,或者在括号中的一个表达式。

量词含义
E?匹配0次或者1次,表明E是可选的,E?等价于E{0, 1}
E+匹配1次或者多次,E+等价于E{1,},例如,0+匹配0,00,000等
E*匹配0次或者多次,等价于E{0,}
E{n}匹配n次,等价于E{n, n},例如x{5}等价于x{5,5},也等价于xxxxx
E{n,}匹配至少n次
E{,m}匹配至多m次,等价于E{0, m}
E{n, m}匹配至少n次,至多m次

7. 正则表达式中的断言

断言含义
^标志着字符串的开始,如果要匹配"^"就要使用"\\^"
$标志着字符串的结尾,如果要匹配"$"就要使用"\\$"
\b一个单词的边界
\B一个非单词的边界,当"\b"为false时,它为true
(?=E)表达式后面紧跟着E才匹配,例如,const(?=\s+char)匹配const且其后必须有char
(?!E)表达式后面没有紧跟着E才匹配,例如,const(?!\s+char)匹配const但其后不能有char
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值