正则表达式
创始人
2024-01-21 04:18:29
0

正则表达式的匹配机制:

字符集:

[ X ]表示匹配X
[^X]表示不匹配X
[A-X]表示匹配范围A-X
[02457] 匹配 0 2 4 5 7
[01234] 匹配 0 1 2 3 4   等价于[0-4]
[0-9]   匹配 0-9
[^0-9]  不匹配 0-9
[a-z]   匹配 a-z
[^a-z]  不匹配 a-z
[a-zA-Z]匹配 a-z A-Z  

量词:

m{X}表示匹配X次
m{X,Y}最下匹配X次,最多匹配Y次
m?匹配0次或1次  相当于m{0,1}
m+至少匹配1次    相当于m{1,}

m*

匹配0次或多次 相当于m{0,}
5{1}       匹配一次[5-9]{1}   匹配一次5{1,5}     最少一次,最多五次[1-9]{1,}  最少一次[a-z]?     0次或一次    {0,1}[A-Z]+     至少匹配一次 {1,0}[a-zA-Z]*  0次或多次    {0,}

 字符集的字符和缩写

\t   \v制表符水平,竖直
\r  \n回车和换行
\xhhhh  \0ooo表示16进制数,8进制数
.匹配任何字符
\d   \D匹配一个数字,匹配一个非数字
\s  \S匹配一个空格,匹配一个非空格
\w  \W匹配一个单词,匹配一个非单词
\\\
\%%
\^^
\n反向引用  \1、 \2等,把前面的分组赋值个\1、\2
\t\n[123]?\w  匹配 水平制表 换行 [123]匹配0个或1个 匹配一个单词
\%\^\\        匹配  %^\
\d{5}         匹配5个数字
\d\s{5}       匹配1个数字和5个字符
.*            匹配任意字符0个或多个

 断言:

^匹配开头
$匹配结尾
\b字符边界
\B非字符边界
(?=E)尾部匹配则为true
(?!E)尾部不匹配为true
(?<=E)头部匹配
  (?头部不匹配
^9\w{10} 匹配9接10个字符开头
1111$    匹配1111结尾的
\babcd\b 匹配abcd这个单词断言的使用
\w+(?=tion) 判断是否是tion结尾
\w+(?!tion) 判断是否不是tion结尾
(<=tion)\w+ 判断是否是tion开头
(

通配符:

?匹配单个字符
*匹配0个或多个字符
[]字符集可以用方括号表示,类似于完整的正则表达式
*.txt  匹配.txt 文件

分组:

()分组
(\w)     表示一个分组
(\w)(\w) 自动命名分组,第一个为1,第二个为2
(?'GG'\w*))定义一个名为 GG的分组

分组和反向引用的例子:

(\w+)\s\1   匹配  Hellow Hellow  \1 代表(\w+)的内容
(\d+)\s(\d+)\s\1\s\2  
匹配 1111 2222 1111 2222
\1代表第一个(\d+)
\2代表第二个(\d+)(?\w+)\s+\k   \k 代表(?\w+)

 

|分支条件,匹配左边或右边
(ab|cd)  要么匹配ab 要么匹配cd
\转义字符

需要转义的字符:$ (  )  *  +  .  [  ]  ?  \  {  }  |

\?\[\}  匹配?[}

 贪婪和懒惰:

  • 贪婪:匹配尽可能长的字符串
  • 懒惰:匹配尽可能短的字符串
  • 懒惰模式的启用只需在重复元字符之后加?既可
*?重复任意次,但尽可能少重复
+?重复1次或更多次,但尽可能少重复
??重复0次或1次,但尽可能少重复

相关内容

热门资讯

AWSECS:访问外部网络时出... 如果您在AWS ECS中部署了应用程序,并且该应用程序需要访问外部网络,但是无法正常访问,可能是因为...
AWSElasticBeans... 在Dockerfile中手动配置nginx反向代理。例如,在Dockerfile中添加以下代码:FR...
AWR报告解读 WORKLOAD REPOSITORY PDB report (PDB snapshots) AW...
AWS管理控制台菜单和权限 要在AWS管理控制台中创建菜单和权限,您可以使用AWS Identity and Access Ma...
银河麒麟V10SP1高级服务器... 银河麒麟高级服务器操作系统简介: 银河麒麟高级服务器操作系统V10是针对企业级关键业务...
北信源内网安全管理卸载 北信源内网安全管理是一款网络安全管理软件,主要用于保护内网安全。在日常使用过程中,卸载该软件是一种常...
群晖外网访问终极解决方法:IP... 写在前面的话 受够了群晖的quickconnet的小水管了,急需一个新的解决方法&#x...
​ToDesk 远程工具安装及... 目录 前言 ToDesk 优势 ToDesk 下载安装 ToDesk 功能展示 文件传输 设备链接 ...
Azure构建流程(Power... 这可能是由于配置错误导致的问题。请检查构建流程任务中的“发布构建制品”步骤,确保正确配置了“Arti...
不能访问光猫的的管理页面 光猫是现代家庭宽带网络的重要组成部分,它可以提供高速稳定的网络连接。但是,有时候我们会遇到不能访问光...