设为首页 收藏本站
查看: 467|回复: 0

[经验分享] Linux正则表达式

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2016-8-1 08:57:59 | 显示全部楼层 |阅读模式
Linux正则表达式

基本通配符
正则表达式
描述
示例
\
转义符,将特殊字符进行转义,忽略其特殊意义
a\.b匹配a.b,但不能匹配ajb,.被转义为特殊意义
^
匹配行首,awk中,^则是匹配字符串的开始
^tux匹配以tux开头的行
$
匹配行尾,awk中,$则是匹配字符串的结尾
tux$匹配以tux结尾的行
.
匹配除换行符\n之外的任意单个字符,awk则中可以
ab.匹配abc或bad,不可匹配abcd或abde,只能匹配单字符
[ ]
匹配包含在[字符]之中的任意一个字符
coo[kl]可以匹配cook或cool
[^ ]
匹配[^字符]之外的任意一个字符
123[^45]不可以匹配1234或1235,1236、1237都可以
[ - ]
匹配[]中指定范围内的任意一个字符,要写成递增
[0-9]可以匹配1、2或3等其中任意一个数字
?
匹配之前的项1次或者0次
colou?r可以匹配color或者colour,不能匹配colouur
+
匹配之前的项1次或者多次
sa-6+匹配sa-6、sa-666,不能匹配sa-
*
匹配之前的项0次或者多次
co*l匹配cl、col、cool、coool等
()
匹配表达式,创建一个用于匹配的子串
ma(tri)?匹配max或maxtrix
{ n }
匹配之前的项n次,n是可以为0的正整数
[0-9]{3}匹配任意一个三位数,可以扩展为[0-9][0-9][0-9]
{n,}
之前的项至少需要匹配n次
[0-9]{2,}匹配任意一个两位数或更多位数
{n,m}
指定之前的项至少匹配n次,最多匹配m次,n<=m
[0-9]{2,5}匹配从两位数到五位数之间的任意一个数字
|
交替匹配|两边的任意一项
ab(c|d)匹配abc或abd
POSIX字符类
POSIX字符类是一个形如[:...:]的特殊元序列(meta sequence),他可以用于匹配特定的字符范围。
正则表达式
描述
示例
[:alnum:]
匹配任意一个字母或数字字符
[[:alnum:]]+
[:alpha:]
匹配任意一个字母字符(包括大小写字母)
[[:alpha:]]{4}
[:blank:]
空格与制表符(横向和纵向)
[[:blank:]]*
[:digit:]
匹配任意一个数字字符
[[:digit:]]?
[:lower:]
匹配小写字母
[[:lower:]]{5,}
[:upper:]
匹配大写字母
([[:upper:]]+)?
[:punct:]
匹配标点符号
[[:punct:]]
[:space:]
匹配一个包括换行符、回车等在内的所有空白符
[[:space:]]+
[:graph:]
匹配任何一个可以看得见的且可以打印的字符
[[:graph:]]
[:xdigit:]
任何一个十六进制数(即:0-9,a-f,A-F)
[[:xdigit:]]+
[:cntrl:]
任何一个控制字符(ASCII字符集中的前32个字符)
[[:cntrl:]]
[:print:]
任何一个可以打印的字符
[[:print:]]

元字符
元字符(meta character)是一种Perl风格的正则表达式,只有一部分文本处理工具支持它,并不是所有的文本处理工具都支持。
正则表达式
描述
示例
\b
单词边界
\bcool\b 匹配cool,不匹配coolant
\B
非单词边界
cool\B 匹配coolant,不匹配cool
\d
单个数字字符
b\db 匹配b2b,不匹配bcb
\D
单个非数字字符
b\Db 匹配bcb,不匹配b2b
\w
单个单词字符(字母、数字与_)
\w 匹配1或a,不匹配&
\W
单个非单词字符
\W 匹配&,不匹配1或a
\n
换行符
\n 匹配一个新行
\s
单个空白字符
x\sx 匹配x x,不匹配xx
\S
单个非空白字符
x\S\x 匹配xkx,不匹配xx
\r
回车
\r 匹配回车
\t
横向制表符
\t 匹配一个横向制表符
\v
垂直制表符
\v 匹配一个垂直制表符
\f
换页符
\f 匹配一个换页符



运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-251633-1-1.html 上篇帖子: chattr和lsattr文件目录的特殊权限 下篇帖子: linux系统下yum仓库的建立与目录共享的建立(脚本文件) 表达式 Linux
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表