什么是正则表达式?
正则表达式是一些用来匹配和处理文本的字符串
练习网站:https://regexr.com

1. 匹配纯文本

正则表达式:and

image.png

2. 匹配任意字符

使用符号.可以当做任意一个字符进行匹配(包括空格)

正则表达式:h.

image.png

3. 使用转义字符

转义字符能够使元字符当做普通字符看待(元字符即正则表达式中具有功能的字符,如. [ ] \ 等等)

正则表达式:.

image.png

4. 匹配指定字符

使用[]可以指定想进行匹配的字符集合,其中集合中的元素是或 || 的关系

正则表达式:[abc]e

image.png
常见如下表达式:[Aa]、[Zz]等等,可以实现不区分大小写字母匹配

5. 字符集合区间匹配

有些区间可以简写,例如0123456789可以简写为0-9,26个英文字母可以简写为A-Z a-z

正则表达式:[A-Za-z][0-9]

image.png

6. 取非匹配

使用^字符可以对当前作用域下的匹配取非,对比4
注:取非只能用在集合中,否则会当做位置匹配

正则表达式::[^abc]e

image.png

7. 空白元字符

image.png

8. 匹配字母数字下划线

正则表达式:\w 等价于 [a-zA-Z0-9_]

image.png

正则表达式:\d 等价于[0-9]

image.png

9. 匹配空格

正则表达式:e空格

image.png

10. 匹配空白字符

正则表达式:\s (\S表示匹配非空白字符)

image.png

11. 匹配十六进制或八进制

image.png
image.png

12. 匹配字符数量

+ 一个或多个字符

  • 零个或多个字符 ? 零个或1个字符

image.png

13. 设定重复匹配次数

使用{次数}可以设定重复匹配的次数

正则表达式:a{3}

image.png

正则表达式:a{2,4}

image.png

正则表达式:a{2,} 至少匹配两次

image.png

14. 防止匹配过度-惰性匹配

image.png
贪婪性匹配:
image.png
懒惰性匹配:
image.png

15. 单词边界

正则表达式:abc\b abc右边是边界就能匹配

image.png
image.png

正则表达式:abc\B 正好与上面相反,表示abc右边不为边界才能匹配

image.png

16. 字符串边界