2012年(12)
分类: LINUX
2012-06-21 17:13:52
简单的说,正则表达式就是处理字符串的方法,它是以行为单位来进行字符串的处理行为,正则表达式通过一些特殊符号的辅助,可以让用户轻易达到查找、删除、替换某特定字符串的处理程序。正则表达式主要分为两类:基本正则表达式和扩展正则表达式。
二、正则表达式元字符
1、基本正则表达式元字符
[]:指定范围内的任意单个字符。
[^]:指定字符之外的其他字符。例如
X\{m,n\}:表示其前面的字符X至少出现m次,至多出现n次。
注意:在基本正则表达式中?前边要加转义字符\才能使用。
^:行首锚定符。
\(\):分组引用;\1:表示第一组括号中的内容;\2:表示第二组括号中的内容;依次类推。例如:
2、扩展正则表达式元字符
扩展正则表达式的元字符和基本正则表达式的元字符基本相同。下面只介绍其不同之处:
\(\)变为只用()表示。
\{\}变为只用{ }表示。
+:表示匹配其前的字符至少一次。
?:匹配前的字符0才或1次。
三、文本过滤工具grep
1、grep简介
grep:Galobal research Regular Expression and printing,它可以根据我们指定的正则表达式作为模式来匹配文件中的每一行文本,并将匹配到的文本显示出来的工具。
2、grep使用格式
grep [option] PATTERN file……
3、grep常用选项
-v:对模式匹配到的结果取反
-i:忽略字母大小写。
-o:仅显示匹配到的字符串。例如:
-E:表示支持扩展正则表达式。
-A n:表示显示匹配到的行和其后的n行。例如:
-B n:表示显示匹配到的行和前的n行。例如:
-C n:表示显示匹配到的行和其上下n行。例如: