shell 正则表达式

来源:互联网 发布:配音用什么软件 编辑:程序博客网 时间:2024/05/04 12:53

在说正则表达式之前,先说两个概念。

元字符:元字符简单的说就是描述字符的字符

正则表达式:用一串字符和元字符构成的字符串。

下面就具体说一下正则表达式元字符的意义:

1. “*”用于匹配前面一个普通字符的0次或多次

hel*o  :*就表示匹配l字符的0次或多次,如helo、hello、helllo等

2. “.” 用于匹配一个任意字符

hell.   :可以代表hello、helle、helli等

3. “^” 用于匹配行首

^hello  :表示匹配以hello开头的所有行

4. ”$“  用于匹配行尾

hello$    :表示匹配以hello结尾的所有行

^$        :表示既匹配行首又匹配行尾,中间没有字符,因此为空行

^.$       :匹配一行只有一个字符

5. [ ] :支持穷举方法列出字符集合的所有元素,也支持使用"-"表示字符集和的范围

[0123456]   等价与 [0-6]        :匹配任何一个数字

[a-z]        :所有小写字母

特殊::"^" 和"[ ]"在一起用就表示取反    [^b-k]  表示匹配所有不在b-k内的字母

6.”\“  是转义字符 ,用于屏蔽一个元字符的特殊意义

\.      :表示一个普通的字符句号"."

7."\<\>":  精确匹配符号,屏蔽<>
\<the\>     :表示the

8.  \{\}: 表示前一个字符重复,可以指定重复的次数

\{n\} :匹配前面字符出现n次

\{n,\}:匹配前面字符至少出现n次

\{n,m\} :匹配前面字符出现n~m次

正则表达式的扩展部分:

1.“?”   匹配前一个字符的0次或1次

BO?D      :表示BOD 或BOOD

2. “+”  匹配前面一个字符1次或多次

3.“()"和"|"

re(a|e|o)d    在aeo中任选一个字符,等价与[aeo]


1 0