正则表达式,又称正规表示法、常规表示法(英语:Regular Expression,在代码中常简写为regex、regexp或RE),计算机科学的一个概念。正则表达式使用单个字符串来描述、匹配一系列符合某个句法规则的字符串。在很多文本编辑器里,正则表达式通常被用来检索、替换那些符合某个模式的文本。
grep (global search regular expression=\‘#\‘" ) and print out the line,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。Unix的grep家族包括grep、egrep和fgrep。这里仅对grep和egrep做简要示例。
基本格式:
grep [OPTIONS] PATTERN [FILE...]
grep [OPTIONS] [-e PATTERN | -f FILE] [FILE...]
常用命令:
-v: 反向,显示不能被模式所匹配到的行;
-o: 仅显示被模式匹配到的字串,而非整行;
-i: 不区分字符大小写, ignore-case
-A #:之后的几行字符
-B:之前的几行字符
-n: 显示匹配行及行号,在显示出内容的每行前面会显示行数
基本格式:
“\w”匹配文字和数字字符,也就是[A-Za-z0-9],如:‘G\w*p‘匹配以G后跟零个或多个文字或数字字符,然后是p。
x{m},x{m,},x{m,n}
[[:alnum:]] 匹配任何一个字母或数字([A-Za-z0-9])
[[:alpha:]] 匹配任何一个字母([A-Za-z])
[[:lower:]] 匹配任何一个小写字母([a-z])
[[:upper:]] 匹配任何一个大写字母([A-Z])
[[:space:]] 任何一个空白字符:制表符、空格
[[:punct:]] 任何一个标点符号(不包括:[:alnum:]、[:cntrl:]、[:space:]字符集)
egrep:egrep为grep的拓展形式,功能比grep强大。比如:grep 不支持 a|b 或 (abc|xyz) 这类", 但是 egrep 支持. grep 在处理 {n,m} 时, 需用 \{ 与 \} 处理, 但 egrep 则不需.
原文:http://8577707.blog.51cto.com/8567707/1362214