标签:mail 使用 正则表达式 合成 config 不同 原因 命令 cat
*基础正则表达式:basic regular expression BRE\
转义字符,符号,让有特殊意义的符号回归原型,例如:.就表示点
例如:找出以点结尾的行
grep ‘.$‘ oldboy.txt
19.3.7.2 \n
表示回车
19.3.8 [ ]
[]在双引号中,如果[]中是特殊字符会有特殊含义,单引号看做普通单位.双引号中的[]里是正则也不会特殊处理br/>正则表达式认为[]里的内容都是相同的[@#$]这里认为@#$为相同符号,加上+合成一个整体例如,不加+号视为[]中只匹配一个字符
[root@yxd ~]# echo ‘#@$#1$$#@$$$2@@@##$$@@‘ |egrep -o ‘[$#@]+‘br/>#@$#
$$#@$$$
@@@##$$@@ 1没有中断再到2中断
匹配所有一个字符 grep [abc] yxd.txt 表示查找a或者b或者c [a-z]表示a到z 全部小写字母等[a-Z]大小写
[a-zA-Z0-9],单引号中的[]中的内容没有特殊含义,是一个字符
[root@yxd data]# egrep ‘[0-9]{3,}‘ oldboy.txt -o
49000448
4900000448
19.3.8.1 [^]
表示排除显示,例如:grep ‘[^mno]‘ oldboy.txt,查找除了m或n或o的内容,根据字母的,放前边是取反,放后边查找^例如[mn^]
19.3.8.2 ^[]
以括号里的开头,例如:grep ^[mno] yxd.txt 以m或以n或以o开头的行
19.3.8.3 找以小写字母开头,.!结尾
[root@yxd data]# grep ‘^[a-z].[.!]$‘ oldboy.txt
not 4900000448.
my god ,i am not oldbey,but OLDBOY!
19.3.8.4 不以mn开头
grep ‘^[^mn]‘ oldboy.txxt
grep -v ‘^[mn]‘ oldboy.txt
sed -n ‘/^[^mn]/p‘ oldboy.txt
awk ‘/^[^mn]/‘ oldboy.txt
19.4 扩展正则表达式:
需要用egrep或者grep -E
extended regular expression ERE
包括: | + () {} ?
?
表示重复前一个字符0次或者1次
例如egrep "go?d" a.log
gd
god
用+号就是egrep "go+d" a.log
good
god
goood
用就是 grep "god" a.log
good
gd
god
goood
19.4.5 {}
自定义次数或前一个字符重复几次到几次,例如‘wq{1,3}‘代表q这个字符重复1次至3次,包括2次
前一个字符连续出现最少几次,最多几次,
例如:0{n,m} 前一个字符至少连续出现n次,最多连续出现了m次
0{n} 前一个字符连续出现n次
0{n,} 前一个字符至少连续出现n次
0{,m} 前一个字符最多连续出现了m次
前一个字符重复0次或0次以上
+
前一个字符重复1次或1次以上,可以把连续出现的东西连成一个整体
?
前一个字符重复0次或1次
{}
自定义几次或前一个字符重复几次到几次,例如:‘weeq{1,3}‘q重复1次至3次
*
标签:mail 使用 正则表达式 合成 config 不同 原因 命令 cat
原文地址:http://blog.51cto.com/12928749/2059863