首页 > Linux操作系统 > Linux操作系统 > 7,正则表达式(perl笔记)
2,关于元字符
点号(.)是通配符(wildcard character),它会匹配换行符(
)以外的所有单个字符。
3,简易的量词
在一个模式中重复某些字是很常见的情况。星号(*)会匹配它的前一个项目0次或多次。
.* 会匹配任意字符无限多次
+ 匹配前一个项目一次以上
? 表示前一个鲜明是可有可无的
4,模式组
小括号
/(fred)+/会匹配像fredfredfred这种字符
5,择一匹配
竖线(|)在这里通常念“或”,表示左边匹配或右边匹配。也就是说,如果竖线做半边的模式匹配失败,则竖线右边可能会匹配成功。
/fred|barney|betty/对任何提到fred,barney或betty的字符都会匹配成功。
6,字符集
字符集(character class)就是方括号(或称中括号)里一连串可能的字符。它只会批评单一字符,但是该字符可以是字符集里的任何一个。
[abcwxyz]会匹配这7个字符中的任意一个
[a-zA-Z] 匹配字母
[00-177] 匹配任何7位的ASCII字符
7,字符集简写
代表任意数字的字符集[0-9]可以被简写成d
[A-Za-z0-9_] 简写为w
s简写擅长处理空白,它相当于[f
]。也就是说,它等于是字符集,里面包含5种空白字符:换页(form-feed),制表(tab),换行(newline),回车(carriage return)以及空格(space).
例子:
/fred w+ barney/将会匹配fred,一个空格,一个单词再接一个空格与barney.
8, 反应简写的排出
有时候可能想用[^d],[^w]或[^s],来分别表示某个非数字字符,非单词字符或非空白字符。只要使用它们的大写形式-D,W或S就可以了
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/312079/viewspace-245692/ ,如需转载,请注明出处,否则将追究法律责任。