快速掌握正则表达式

偶然间找到了一个快速学习正则的小视频,记录下来。

限定符 Quantifiers

前面一个字符需要出现0或1次
在这里插入图片描述

*

匹配前一字符出现0或者多次
在这里插入图片描述

+

匹配前一字符出现1次以上
在这里插入图片描述

{…}

  • 指定前一字符出现次数

允许b出现6次在这里插入图片描述

  • 限定前一字符出现次数范围

允许b出现 2-6 次
在这里插入图片描述

允许b出现2次以上在这里插入图片描述

(…)

匹配多个字符

重复匹配ab多次
在这里插入图片描述

“或”运算 OR Operator

(…|…)

匹配 a cat 或者 a dog
在这里插入图片描述
括号是不可缺少的,否则将变成匹配 a cat或者dog
在这里插入图片描述

字符类 Character Classes

[…]+

匹配abc三个字母构成的单词 [abc]+
在这里插入图片描述

匹配所有的小写英文字符、大写英文字符和数字0-9【a-zA-Z0-9]+
在这里插入图片描述

^

要求匹配除了尖号后面列出的 [以外] 的字符

** [^0-9]+ 匹配0-9之外的字符,即非数字字符(包括换行符)**
在这里插入图片描述

元字符 Meta-characters

\d 数字字符

等同于 [0-9]+
在这里插入图片描述

\w 单词字符

单词字符(英文、数字及下划线)
在这里插入图片描述

\s 空白符

空白符(包含Tab和换行符)
在这里插入图片描述

\D 非数字字符

在这里插入图片描述

\W 非单词字符

在这里插入图片描述

\S 非空白字符

在这里插入图片描述

. 任意字符

任意字符不包含换行符
在这里插入图片描述

^ 匹配行首

^a 匹配行首的a
在这里插入图片描述

$ 匹配行尾

a$ 匹配行首的a
在这里插入图片描述

贪婪与懒惰匹配 Greedy vs Lazy Match

  • 正则表达式默认贪婪匹配
    在这里插入图片描述

  • ? 将默认的贪婪匹配变成懒惰匹配
    在这里插入图片描述

例子1:RGB 颜色值匹配

  • RGB十六进制颜色值 [1-fA-F0-9]
  • 六位数 {6}
  • 字符边界 \b
    在这里插入图片描述

例子2:IPv4地址匹配

  • 四段数字构成
  • 句点隔开

简单满足ipv4格式,但是256在ipv4地址中不存在,因此这种写法不正确
在这里插入图片描述
其中:

  • \d+ 匹配长度大于1的数字
  • \. 反斜杠作转义字符

在这里插入图片描述

学习资料

  1. 正则表达式30分钟入门教程 作者: deerchao https://deerchao.cn/tutorials/regex/regex.htm
  2. Regex tutorial — A quick cheatsheet by examples (英文) 作者: Jonny Fox https://medium.com/factory-mind/regex-tutorial-a-simple-cheatsheet-by-examples-649dc1c3f285
  3. Regular Expressions Tutorial (英文) https://www.regular-expressions.info/tutorial.html
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

zoetu

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值