一文学懂正则匹配

admin 2022年7月7日14:33:23评论46 views字数 1120阅读3分44秒阅读模式

  “ 一句一图

      正则真滴非常重要,写代码必备,不会的小伙伴赶紧学起来

      下列学习使用的网站为

https://regexlearn.com/learn/regex101

冲冲冲,学起来吧

我们先来看一看表达重复次数的符号

一文学懂正则匹配

*(星号)在字符串后面加上*,表示一个字符完全不匹配或可以匹配多次。

一文学懂正则匹配

+(加号)表示一个字符可以出现一次或者多次,把加号放在它的后边

一文学懂正则匹配

?(问号)表示一个字符是可选的,也就是说前面的字符出现一次或者0次

一文学懂正则匹配

{}(大括号表示一个字符出现的确切次数,在该字符的末尾,将它出现的次数写进大括号中。表示一个字符至少出现多少次,我们在该字符的末尾,将它至少出现的次数写进大括号中,{x,}。为了表示一些字符出现的次数在某个数字范围内,在字符末尾,将它至少和至多出现的次数写进大括号{x,y}

一文学懂正则匹配

一文学懂正则匹配

一文学懂正则匹配

一个小练习

匹配文本中的 4 位阿拉伯数字。

一文学懂正则匹配

()括号用来分组的,使用这些分组来引用或执行一些规则

一文学懂正则匹配

引用组,我没用过,第一次见。

一文学懂正则匹配

(?:)非捕获分组对表达式分组,确保不被引用保护

一文学懂正则匹配

|(竖线)竖线允许一个表达式包含多个不同的分支

一文学懂正则匹配

(转义字符)在书写正则表达式时,我们会用到 { } [ ] /  + * . $^ | ? 这些特殊字符 。为了匹配这些特殊字符本身,我们需要通过  将它们转义

一文学懂正则匹配

^(插入符)注意:^[0-9]代表数字开头的,[^0-9]代表除了0-9之外的数匹配字符串开始

一文学懂正则匹配

$(美元符号)匹配字符串的结束

一文学懂正则匹配

w(单词字符)W(非单词字符)d(数字字符)D(非数字字符)s(空白符)S(非空白符)

上面这些没啥说的,就是分别对应的各种字符,接下来我们讲一讲零宽断言

一文学懂正则匹配

(?=)正向先行断言匹配数字后面有PM的在字符

一文学懂正则匹配

(?!)负向先行断言匹配数字后面没有PM的字符

一文学懂正则匹配

(?<=)正向后行断言匹配字符前面有$的字符

一文学懂正则匹配

(?<!)负向后行断言匹配前面没有$的字符

一文学懂正则匹配

接下来讲讲标志

标志改变表达式的输出。这就是标志也称为 修饰符 的原因。标志决定表达式是否将文本视作单独的行处理,是否区分大小写,或者是否查找所有匹配项。

一文学懂正则匹配

/g 全局标志/m 多行标志/i 忽略大小写

一文学懂正则匹配

一文学懂正则匹配

一文学懂正则匹配

接下来是讲贪婪匹配与懒惰匹配,请仔细看例子

贪婪匹配正则表达式默认执行贪婪匹配

一文学懂正则匹配

懒惰匹配与贪婪匹配不同,懒惰匹配在第一次匹配时停止

一文学懂正则匹配


喜欢就点个关注再走吧

一文学懂正则匹配

---------------------

一文学懂正则匹配

---------------------

欢迎关注公众号:虚拟尽头

一次src挖洞经历(不是一个)

SRC 挖洞tips

如何做到更加细致的信息搜集(上)

如何做到更加细致的信息搜集(下)

使用Yakit快速刷取cnvd

面试经历 - 某数字厂- 安服实习生

一文学懂正则匹配一文学懂正则匹配一文学懂正则匹配师傅们,聊天框发送"二维码",加我好友一起交流呀(加的时候请备注来自公众号)。


原文始发于微信公众号(虚拟尽头):一文学懂正则匹配

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年7月7日14:33:23
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   一文学懂正则匹配https://cn-sec.com/archives/1163860.html

发表评论

匿名网友 填写信息