1.概念
正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,
这个“规则字符串”用来表达对字符串的一种过滤逻辑。规定一些特殊语法表示字符类、数量限定符和位置关系,然后用这些特殊语法和普
通字符一起表示一个模式,这就是正则表达式(Regular Expression)。
2.特点
1. 灵活性、逻辑性和功能性非常的强;
2. 可以迅速地用极简单的方式达到字符串的复杂控制。
3.组成
由三部分组成
- 字符类
- 数量限定符
- 位置限定符
4.详解
1.字符类
字符 | 含义 |
. | 匹配任意一个字符 |
[] | 匹配括号中任意一个字符 |
- | 在括号中使用,表示字符范围 |
^ | 匹配出[]中字符外的任一字符 |
[[ :xxx:]] | grep工具预定的一些命名字符 |
2.数量限定符
字符 | 含义 |
? | 紧跟在她前面的单元匹配零次或一次 |
+ | 紧跟在她前面的单元匹配一次或多次 |
* | 紧跟在她前面的单元匹配零次或多次 |
{N} | 紧跟在她前面的单元匹配精确N次 |
{N,} | 紧跟在她前面的单元匹配至少N次 |
{,M} | 紧跟在她前面的单元匹配至多M次 |
{N,M} | 紧跟在她前面的单元匹配至少N次至多M次 |
3.位置限定符
字符 | 含义 |
^ | 匹配行首的位置 |
$ | 匹配行末的位置 |
\< | 匹配单词开头的位置 |
\> | 匹配单词结束的位置 |
\b | 匹配单词开头或结束的位置 |
\B | 匹配非单词开头或结束的位置 |
4.特殊字符
字符 | 含义 |
\ | 转义字符,普通字符转为特殊字符,特殊字符转为普通字符 |
() | 将正则表达式一部分括成一个单元,可以对整个单元使用数量限定符 |
| | 连接两个子表达式,表示或的关系 |