博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
正则表达式
阅读量:4918 次
发布时间:2019-06-11

本文共 1053 字,大约阅读时间需要 3 分钟。

1.使用句点匹配单字符

句点”.“可以匹配任意单字符。

例如:

如果要匹配一个字符串,以beg开头,中间夹一个任意字符,那么可以表示为beg.n

在ls -l命令中,可以匹配一定的权限 ...x..x..x : ls -l |grep ...x..x..x

 

2.在行首以^匹配字符串或字符序列

^只允许在一行的开始匹配字符或单词

例如:

使用ls -l命令,并匹配目录:ls - l |grep ^d

可以将各种模式混合使用: ^...4XC.... 得到类似1234XC9088的结果

行首前4个字符为comp,匹配操作表示为 ^comp

 

3.在行尾以$匹配字符串或字符

$与^正好相反,它在行尾匹配字符串和字符,$符号放在匹配单词后

例如:

假定要匹配以单词trouble结尾的所有行,操作为:trouble$

匹配所有空行,操作为:  ^$

匹配只有一个字符的行: ^.$

 

4.使用*匹配字符串中的单子或其重复序列

使用此特殊字符匹配任意字符或字符串的重复多次表达式

例如:

compu*t将匹配字符u一次或多次,结果可能为computer,computing,compuuuuute

10133*匹配到:101333,10133,1013344444

 

5.使用\屏蔽一个特殊字符的含义

以下字符为特殊字符:$ . ' " * [] ^ | () \ + ?

假定要匹配包含字符” . “的各行,而.代表匹配任意单字符的特殊字符,因此需要屏蔽其含义:\. 

此时,反斜杠后面的字符为普通字符,句点

如果要匹配以*.pas结尾的所有文件,操作为:\*\.pas

 

6.使用[]匹配一个范围或集合

使用[]匹配特定字符串或字符串集,使用-表示一个字符串范围

例如:

匹配任意一个数字可以用:[0123456789]也可以用:[0-9]

任意小写字母[a-z]

任意字母[A-Za-z]

 

7.使用\{\}匹配模式结果出现的次数

使用*可匹配所有结果任意次,但是如果要指定次数,就应使用\{\},该模式有三种形式:

pattern\{n\}:匹配模式出现n次

pattern\{n,\}:匹配模式至少出现n次

pattern\{n,m\}:匹配模式出现n到m次之间

例如:

要匹配前4个字符是数字,接下来是xx,最后4个也是数字,操作为:[0-9]\{4\}xx[0-9]\{4\}

经常使用的正则表达式:

 

转载于:https://www.cnblogs.com/xiaoyinyue/p/4917310.html

你可能感兴趣的文章
jenkins构建基于gradle的springboot项目CI采坑(采用jar方式部署)
查看>>
addInArray been called
查看>>
「主席树」学习笔记
查看>>
LeetCode:Sort Colors
查看>>
关于iscroll插件的使用
查看>>
Css预处理器---Less(一)
查看>>
AppCan - 推送问题一般日志排查步骤
查看>>
SQL语句总结
查看>>
什么是HTML?HTML怎么学?HTML基础教程
查看>>
把JavaScript对象转化成JSON对象
查看>>
redis数据丢失及解决
查看>>
glusterFS分布式存储部署流程
查看>>
数据链路层工作原理
查看>>
win 10 hosts文件不生效
查看>>
Hadoop.之.入门部署
查看>>
【HTML5 localStorage本地储存】简介&基本语法
查看>>
总有一项适合你:联想 Miix2 8寸版触摸屏失灵的各项解决方案
查看>>
ie8实现无刷新文件上传
查看>>
Struts2 Action扩展名的三种修改方法
查看>>
8.7.2 类的继承和方法的覆盖
查看>>