正则表达式

1、基本元字符集
^        锚定行的开始                            /^love/          匹配所有以love开头的行
$        锚定行的结束                            /love$/           匹配所有以love结束的行
.         匹配一个字符                            /l..e/              匹配所有这样的行,这些行包含这样的字符:第一个字符是l,紧跟着两个字符,然后是e
*        代表0或多个先前字符                  /*love/           匹配所有这样的行,有0个或多个空格,空格后跟着love
[]       匹配括号中的一个字符                  /[Ll]ove/        匹配所有包含love或者Love的行
[x-y]   匹配括号中指定范围中的一个字符    /[A-Z]ove/     匹配所有这样的行,这些行包含这样的字符:第一个字符是从A到Z中间的一个,后面跟着ove
[^]     匹配一个不在范围的字符               /[^A-Z]/ove   匹配所有这样的行,这些行包含这样的字符:第一个字符不是从A到Z中间的一个,后面跟着ove
\        用来转义一个元字符                     /love\./          匹配所有这样的行,这些行包含这样的字符:love后面跟着一个点.。通常.表示任何字符的元字符

2、附加元字符集
许多使用正则表达式的UNIX程序都支持附加元字符集
\<              锚定单词的开始                  /\<love/                 匹配这样的行,这些行包含以love开头的单词
\>              锚定单词的结束                  /love\>/                 匹配这样的行,这些行包含以love结束的单词
\(..\)           标记后面用到的字符            /\(love\)able\1rs/    最多可以使用9个标签。匹配这样的行,这些行包含这样的字符,在loveable后面跟着lovers
x\{m\}       m次复制字符x                   /o\{5,10\}/            匹配这样的行,包含的o的数量在5到10个之间。
x\{m,\}      至少m次复制字符x
x\{m,n\}    至少m次,最多n次复制字符x

注意:
1、各种版本的UNIX以及模板匹配实用程序并不都是可信赖的,通常我们使用vi和grep。
2、\<、\>、\(、\)后面的单词或字符可以使用正则表达式。
例如:/\<f.*th\>/    匹配包含以f开头,紧跟着0个或者任意多个字符(.*),最终以th结束的单词的行

posted on 2015-06-09 21:03  chenxiaopang  阅读(179)  评论(0编辑  收藏  举报

导航