正则表达式学习整理

1."[...]",表示的是一个字符组,很多元字符在字符组内都会失去其原有意义,除非这些字符直接跟在"["字符之后。但"-"连字符(表示一个范围)是一个特殊情况,"-"除非直接跟在"["后面才会失去其元字符的作用。

  例如:'[^1-6]',意思是匹配除了1到6以外的任何字符。'03[-./]19[-./]76'将匹配出"03-19-76"这个字符串.

2."|",表示"或"的意思,代表了正则表达式中的多选结构,例如"grey|gray",匹配grey或gray的字符串。也可以这样写,gr(a|e)y,小括号貌似在很多语言里都是起一个范围的作用。

 

"[...]"和"|"有着很大的不同,很多元字符在[...]的意义已经有很大的不同。

 

3."^",脱字符,在[^1-6]中表示匹配除了1到6以外的任何字符,表示“排除”之意。'^From'表示匹配"在一行的首位,且接下来的字符串是From"。

4.如果egrep支持元字符序列和"\>","\<",那么就可以检查单词 的起始和结束位置,比如 '\<cat'表示查找以c a t 这3个字符开头的单词,'cat\>'表示匹配以 c a t 这3个字符结尾的单词。

5.'.'表示 单个任意字符,

6.'(...)'表示限制竖线的作用范围,比如'^(From|Subject|Date)'

7.'?',表示可选项

8.'+','*','?'统称为量词,一般修饰空格符,限定作用元素的匹配次数。*不限制匹配次数,+要确保有一次,否则报错。

posted @ 2013-12-29 15:11  城市*斗士(技术)  阅读(134)  评论(0编辑  收藏  举报