Linux 给人的印象是黑乎乎的神秘窗口,文本操作和数据处理似乎没有 Windows 窗口界面直观方便。其实 Linux 有自己的独特的法宝,称之为三剑客:grep,awk 和 sed 。你可以用这三件法宝很方便的处理数据 : 查找,分段,修改。
正则表达式
要想对文本和数据进行操作,一定离不开正则表达式,本文首先对正则表达式进行介绍。
练习网站:https://tool.oschina.net/regex
什么是正则表达式
正则表达式,又称正规表示式、正规表示法、正规表达式、规则表达式、常规表示法(英语:Regular Expression,在代码中常简写为 regex、regexp 或 RE),计算机科学的一个概念。正则表达式使用单个字符串来描述、匹配一系列符合某个句法规则的字符串。在很多文本编辑器里,正则表达式通常被用来检索、替换那些符合某个模式的文本。
基本语法
一个正则表达式通常被称为一个模式(pattern),为用来描述或者匹配一系列符合某个句法规则的字符串。
字符 | 描述 |
---|---|
^ | 匹配字符串的开始位置 |
$ | 匹配字符串的结束位置 |
* | 匹配前面的子表达式零次或多次,等价于{0,} |
+ | 匹配前面的子表达式一次或多次,等价于{1,} |
? | 匹配前面的子表达式零次或一次,等价于{0,1} |
{n} |
匹配确定的 n 次 |
{n,} |
至少匹配 n 次 |
{n,m} |
最少匹配 n 次且最多匹配 m 次 |
. | 匹配除\n外任何单个字符 |
[xyz] |
匹配所包含的任意一个字符 |
[^xyz] |
匹配未列出的任意字符 |
[a-z] |
匹配指定范围内的任意字符 |
[^a-z] |
匹配任何不在指定范围内的任意字符 |
以上是基本语法,真正使用的时候一般会与后续要介绍的grep/awk/sed结合使用。
标签:字符,匹配,正则表达式,sed,awk,grep,三剑客 From: https://www.cnblogs.com/werr370/p/17421972.html