Linux shell脚本功略第2版笔记--第四章

来源:互联网 发布:手机身份证读取软件 编辑:程序博客网 时间:2024/06/11 15:15

正则表达式

^   行起始标记      示例:^tux匹配以tux起始的行

$  行尾标记          示例:tux$匹配以tux结尾的行

.    匹配任意单个字符 

[]   匹配包含在[字符] 之中的任意一个字符       示例:coo[kl]    匹配cook或cool

[^]  匹配包含在[字符]之外的任意一个字符        示例:9[^01]匹配92、93  ,但是不匹配91 或90

[-]  匹配[]中指定范围内的任意一个字符            示例:[1-5]  匹配从1-5的 任意一个数字

?   匹配之前的项1次或0次                                 示例:colou?r  匹配color或colour, 但不能匹配colouur

+  匹配之前的项1次或多次                                示例:Rollno-9+匹配Rollno-99、Rollno-9,但是不能匹配Rollno-

*  匹配之前的项0次或多次                                 示例:co*l  匹配cl、col、coool等

() 创建一个用于匹配的子串                               示例:ma(tri)?x匹配max 或matrix

{n} 匹配之前的项n次                                           示例:[0-9]{3} 匹配任意一个三位数

{n,} 之前的项至少匹配n次                                  示例:[0-9]{2,}匹配任意一个两位或更多位的数字

{n,m}指定之前的项所必需匹配的最小次数和最大次数    示例:[0-9]{2,5}匹配从两位数到五位数之间的任意一个数字

|    交替匹配 | 两边的任意一项                           示例:Oct   (1st  |  2st)匹配Oct   1st  或Oct  2st

\ 转义字符可以将上面介绍的特殊字符进行转移


可借助正则表达式可视化工具生成正则表达式                            

 

原创粉丝点击