正则表达式笔记

记录我遇到的正则表达式的理解


  • 基本的几个常见字符作用

“?” —匹配子表达式出现[0,1]次
“*” —匹配子表达式出现0~无穷
“+” —匹配子表达式出现1~无穷
“.” —匹配除了\n之外的任何单字符
“[]” —范围表达式,经常看到[0-9]表示匹配0到9直接的数字
“()” —标记一个子表达的开始和结束的位置,子表达式可以获取供以后使用
“$” —-匹配输入字符串的结尾位置
“^” —-和¥相反,但在范围表达式里表示不再这个范围
“\s” —匹配任意空白符,包括多个空白格
“\S”—和”\s”相反



  • 限制符

“*” “+” “?”
“{n}” —匹配确定n次 比如o{3} —》rooob,要有固定3个o的字符串
“{n,}” –匹配至少有n次相同的
“{n,m}”–n<=m,匹配[n,m]次相同的字符串



  • 范围表达式

“[0-9]”–匹配0到9的数字


-“a.*b”和”a.*?b”的判断

前者是匹配第一个a到最后一个b,符合这个条件的字符
后者是匹配第一个a到第一个遇见的b,符合这条件的字符
比如aabab,前者的符合字符为aabab
后者的符合字符为aab

-对表达式的计算过程要从左往右一步一步来

比如”o+?”,可以先看成o+(匹配一个以上个o)
?表示只匹配[0,1]次,所以
“o+?”可以读成匹配一个以上个o且匹配[0,1]次,
这样合并则表示o匹配一次的情况

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值