正则表达式regex

正则表达式通过普通字符和特殊字符(元字符)的组合,形成一种文本模式,用于检索、替换符合某种模式的文本,或从文本中提取符合条件的子串。

元字符

^开头
$结尾
.除了换行符以外的任意字符(a.c可以是a@c abc 但是不可以为空)
w字母|数字|下划线|汉字 word
s空白符 space
d数字 digit
b单词的开始或结束 (\bword\b 匹配整个单词 "word",但不匹配 "words" 或 "sword")

反义

如果一些元字符想取反义,则元字符大写,前面加\表示'非' ;比如\B,匹配不是数字的字符

如果是排除具体的字符,可以用取区间[^] ;比如[^x],除x以外的字符


限定符

*重复0次或者更多
+重复1次或者更多
重复0次或1次
{n}重复n次
{n,}重复至少n次
{n,m}重复n~m次

正则分贪婪与非贪婪(懒惰)之分

贪婪

尽可能多匹配,一次性读完整个字符,只要遇到不匹配的字符就舍弃 直到匹配成功为止;\d{3,6} 假如整个字符串中有6个数字可以匹配 就成功

懒惰

在整个表达式能匹配成功的前提,尽可能少匹配,在限定词后面加?;比如{n,m}? 

分组

()括号内容作为一个整体^(ab)*

转义

\把元字符和限定符转成普通字符^(\(ab\))*

条件

|满足任何一个条件都匹配成功^(123|456)$

区间

[]用[]限定条件[0-9] [a-zA-Z0-9]

  • 8
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值