正则表达式

2022年05月9日18:18:01 发表评论 热度919 ℃

正则表达式在线测试工具

RegExr:https://regexr-cn.com/

红黑编程:http://tool.rbtree.cn/

正则表达式练习网站

编程胶囊:https://codejiaonang.com/#/

字符组

字符组([])允许匹配一组可能出现的字符。

例如:

正则表达式

  1. 要匹配任意数字可以使用[0-9];
  2. 如果想要匹配所有小写字母,可以写成[a-z];
  3. 想要匹配所有大写字母可以写成[A-Z]。

匹配特殊字符

正则表达使用了 - 号代表了区间,但是我们有时候需要匹配的符号就是 -号,该怎么办呢?

这个时候我们需要对-号进行转义操作,即 \-。

取反

可以通过在字符数组开头使用 ^ 字符实现取反操作

匹配不包含数字的字符组

正则表达式

快捷匹配数字和字母

快捷方式 描述
\w

与任意单词字符匹配,任意单词字符表示 [A-Z]、 [a-z]、[0-9]、_

\d 与任意数字匹配

匹配空白字符

正则表达式

\s快捷方式可以匹配空白字符,比如空格,tab、换行等。

单词边界

\b 匹配的是单词的边界,例如,

正则表达式

\bmaster\b 就仅匹配有边界的master单词。

开始和结束

正则表达式中 ^指定的是一个字符串的开始,$指定的是一个字符串的结束。

任意字符

.字符代表匹配任何单个字符,它只能出现在方括号以外

可选字符

正则表达式

可以使用 ? 符号指定一个字符、字符组或其他基本单元

例如:

在这里 u? 表示u是可选的,即可以出现也可以不出现,可以匹配的是 honor 和 honour 。

通过这个案例可以知道?的作用就是匹配它之前的字符0次或1次。

重复

正则表达式

重复区间

正则表达式

语法:{M,N},M是下界而N是上界。

开闭区间

有时候我们可能遇到字符组的重复次数没有边界,例如:

正则表达式

闭区间不写即可表示匹配一个或无数个。

速写

还可以使用两个速写字符指定常见的重复情况,可以使用 + 匹配1个到无数个,使用 *代表0个到无数个。

即:+等价于{1,},*等价于{0,}。

正则表达式

 

瓜皮猪

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: