正则表达式学习笔记

表一(常用正则规范):
规范: 描述:
\ 反斜线(\)字符
\t 制表符
\n 换行
[abc] 字符a或b或c
[^abc] 除了a、b、c之外的任意字符
[a-zA-z0-9] 由字母、数字组成
\d 任意一个数字
\D 非数字
\w (任意一个)字母、数字、下划线
\W 非字母、数字、下划线
\s (任意一个) 所有空白字符(换行、制表符、换行符、空格等)
\S 所有非空白字符
^ 行的开头
$ 行的结尾
. 匹配除换行符之外的任意字符

例子:
[2-8a-n]表示的是2到8和a到n。

正则表达式的特殊符号被包含到中括号内则失去特殊含义,仅代表对应的字符,除了^和-。

表二(数量表示(X表示一组规范))修饰匹配次数的符号:
规范: 描述:
X 必须出现一次
X? 可以出现0次或1次
X* 可以出现0次或1次或多次
X+ 可以出现1次或多次
X{n} 必须出现n次(匹配n次)
X{n,} 必须出现n次以上
X{n,m} 必须出现n~m次(最少n次,最多m次)
X{n,m}这个有两种模式,一种是贪婪模式(默认模式),越多越好,也就是m次。
另外一种是非贪婪模式,要在括号后面加?,越少越好,也就是n次。
会存在\d{3,}的情况,不存在\d{,6}的情况,可以写\d{0,6}。

例如:\d{3,6}
贪婪模式:匹配6次

例:
(\d\d){6}匹配12次
\d\d{6}匹配7次,因为大括号只修饰前一个符号。

例如有1 2 3 456777
\d{6}会匹配456777

有ab a1b a34b a8987b
a\d?b=a\d{0,1}b,匹配ab和a1b
a\d+b=a\d{1,}b,匹配a1b和a34b和a8987b
a\d*b=a\d{0,}b,匹配ab和a1b和a34b和a8978b

表三(逻辑运算符(X、Y表示一组规范)):
规范: 描述:
XY X规范后跟着Y规范
X|Y X规范或Y规范
(X) 作为一个捕获组规范

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值