正则表达式

参考视频教程:https://www.bilibili.com/video/BV1da4y1p7iZ?share_source=copy_web

在线工具:https://regex101.com/

限定符

限定字符或字符串的出现次数

?

前面的字符出现0次或者1次

image-20220207084457223

*

前面的字符出现0次或者多次

image-20220207084611205

+

前面的字符出现1次以上

image-20220207084738169

{}

指定前面字符出现的次数(或出现次数的范围)

匹配字符c出现2次

image-20220207084921412

匹配字符c出现1到2次

image-20220207084949226

匹配字符c出现2次以上

image-20220207085040480

以上为限定单个字符的出现次数,如果想要限定一个字符串出现的次数可以使用()来指定

匹配出现1次以上的ab字符串

image-20220207085551256

或运算符

(aaa|bbb|ccc|...)

image-20220207085726219

字符类

[...]:匹配[...]中的所有字符(匹配的字符只能取自[]中)

匹配所有单个的大小写英文字母

image-20220207091039136

匹配单词

image-20220207091203503

[^...]:匹配除[]中列出的以外的字符

匹配除大小写英文字母以外的字符

image-20220207091511406

image-20220207091544470

元字符

\d

数字字符

image-20220207183558501

image-20220207183608672

\w

单词字符,所有的英文字符、数字和下划线

image-20220207184303262

image-20220207184312102

\s

空白符

image-20220207184408667

此外,\D\W\S分别代表非数字字符、非单词和非空白符

.

代表除换行符之外的任意字符

^

匹配行首

image-20220207184848588

$

匹配行尾

image-20220207184901309

贪婪与懒惰匹配

*+{}在匹配字符串的时候,默认会匹配尽可能多的字符(贪婪匹配)

下面的例子,会匹配<>之间尽可能多的字符

image-20220207185309999

在上面的三个符号的右边加上?会将默认的贪婪匹配切换为懒惰匹配

image-20220207185544339

posted @ 2022-02-07 19:03  dctwan  阅读(20)  评论(0编辑  收藏  举报