什么是正则表达式
正则表达式,又称规则表达式。(英语:Regular Expression,在代码中常简写为regex、regexp或RE),计算机科学的一个概念。正则表达式通常被用来检索、替换那些符合某个模式(规则)的文本。
基本匹配
在搜索时直接输入想要搜索的字母数字或字符,例如:
1 | $ cat regtest.txt |
元字符
元字符 | 描述 |
---|---|
. | 句号匹配任意单个字符除了换行符 |
[] | 字符种类,匹配方括号内的任意字符 |
[^] | 否定的字符种类,匹配除了方括号里的任意字符 |
* | 匹配>=0个重复的在*号之前的字符 |
+ | 匹配>=0个重复的在*号之前的字符 |
? | 标记之前的字符为可选的 |
{n,m} | 匹配n至m个大括号之前的字符或者字符集 |
(abc) | 字符集,匹配与abc一样的字符串 |
\ | 转义字符,用于匹配一些保留的字符 [ ] ( ) { } . * + ? ^ $ \ | |
^ | 从开始行开始匹配 |
$ | 从末端开始匹配 |
点运算符 .
.
是匹配任意单个字符,但不匹配换行符
1 | $ grep -o '.at' regtest.txt |