正则表达式#基础

参考: https://www.geeksforgeeks.org/write-regular-expressions/

定义

正则表达式由一串字符序列组成的search pattern, 程序用它来处理 查找或者替换 操作。

组成元素

  • 表重复含义(+/*/{…})

{n} : 重复n次
{min, }: 大于等于min次
{min, max}: 大于min小于max次

  • 表任意字符(.)

表达式(.*) : 任意字符可出现任意次数

  • 表起始或结束(^/$)

常用来锚点 以…开始 或 以…结尾
^: start position
$: end position

  • 表字符类

字符类用来简略表示一组字符集合。
\s: 匹配任何空白字符和tab
\S: 非\s
\d: 匹配任何数字
\D: 非\d
\w : 匹配字符数字
\W: 非\w
[字符集合]: 匹配[]里出现的每个字符,默认大小敏感
[^字符集合]: 非[字符集合]
[first-last]:字符范围匹配

  • 表或者(|)

th(e|is|at): 可匹配the 或 this 或 that

  • 表分组位置重复(\number)

\n表示第n个括号内的组将在当前位置重复。
([a-z])\1: 将匹配Geek中的“ee”,因为第二个位置的字符与匹配的第一个位置的字符相同。

  • 表备注

( ?# comment ) : 行内备注
#[to end of line] : 行尾备注

巧记

  • +: 匹配1次或多次(巧记:加1)
  • ?: 匹配0次或1次 (巧记:三元表达式是(1)或否(0))
  • *: 匹配0次或多次 (巧记:天上星星可能看不到(0) 或 看到你数不完(多))
  • ^:
    ① 在字符集合(方括号[])内: 表示匹配不在该字符集合中的字符。例 [^0-9] 表示匹配除了数字 0 到 9 之外的任意字符。
    ② 在正则表达式开头(不在方括号内): 表示匹配输入字符串的开始位置。例 ^abc 表示匹配以 “abc” 开头的字符串。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

许心月

码字不易,感谢支持。

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

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

打赏作者

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

抵扣说明:

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

余额充值