正则表达式必会知识点

字符

语法 说明 表达式 可匹配
任意普通字符 匹配自身 abc abc
\ 转义字符 a\\b a\b
. 匹配除了换行符以外的任何字符 相当于\w的加强版(\w看下面一张表)可匹配空格 .+ a c1b
[…] 字符集 可以都写出来也可以写个范围如[a-z],第一个字符如果是\^表示取反,如[\^a]表示a除外的所有字符,如果字符集内有特殊字符,需要转义 a[bc]d abd,acd

预定义字符集

语法 说明 表达式 可匹配
\d 数字[0-9] \d 1,2,3….
\D 非数字[^\d] \D a,b,c…
\s 空白字符 a\sc a c
\S 非空白字符 a\Sc abc
\w 匹配字母,数字,下划线[A-Za-z0-9_] \w+ a_b 1
\W 匹配任意不是字母,数字,下划线 的字符    

量词

语法 说明 表达式 可匹配
* 匹配字符重复0次或无限次 ab* a,ab,abb,abbbb…
+ 匹配字符重复1次或无限次 ab+ ab, abb, abbb…
? 匹配字符重复0次或1次 ab? a, ab
{n} 匹配字符重复n次 ab{2}c abbc
{n,m} 匹配字符重复n到m次 ab{1,2}c abc, abbc
{n,} 匹配字符至少重复n次 ab{2,}c abbc

边界匹配

语法 说明 表达式 可匹配
^ 匹配行或字符串的开头 ^a a
$ 匹配行或字符串的结尾 c$ c
\A 匹配字符串的开头 \Aa a
\Z 匹配字符串的结尾 c\Z c
\b 不会消耗任何字符只匹配一个位置(单词边界,\w能表示的范围) \bb\b a b c的b,a!b!c的b

逻辑分组

语法 说明 表达式 可匹配
| 或,左右表达式匹配一个即可 ab|cd ab,cd
(…) 一个左右括号为一个分组,分组有自己的编号,做左到右每遇到一个左括号分组编号就+1。分组后面可接量词,在分组中的|范围也仅仅在这个分组内有效 (a){2} aa

特殊构造(预查)

语法 说明 表达式 可匹配
(?:) 非获取匹配 a(?:bc|cd) abc,acd
(?=…) 之后的内容需要匹配 a(?=\d) 匹配a后面是数字的字符串
(?!…) 之后的内容需要不匹配 a(?!\d) 匹配a后面不是数字的字符串
(?<=…) 之前的内容需要匹配 (?<=\d)a 匹配a前面是数字的字符串
(?<!…) 之前的内容需要不匹配 (?<!\d)a 匹配a前面不是数字的字符串
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值