第十一章 正则表达式与三剑客知识应用于实践
3W1H:
1、什么是正则表达式?
作用和特殊字符一样。
正则表达式就是为了处理大量的字符串及文本而定义的一套规则和方法。
2、提高效率,快速获取到我们想要的,
3、适用于三剑客命令老三grep(egrep)、老二sed、老大awk
以行为单位处理。
4、实践来讲解怎样用。
Linux三剑客的正则表达式的特点:
1、为了处理大量文本及字符串而定义的一套规则和方法。
2、其工作时以行为单位进行,即一次处理一行。
3、通过正则表达式可以将复杂的处理任务化繁为简,提高操作Linux的效率。
4、仅被三剑客(grep/eprep、sed、awk)命令支持,其他命令无法使用。
易混淆事项:
1、和通配符区别。
2、开发人员正则,一般是Perl兼容正则表达式。
3、Linux三系统剑客正则表达式。
分类:
1、BRE基本正则表达式(适合grep)
2、ERE拓展的正则表达式(适合egrep)
es? 匹配e es
es* 匹配 e es esss essss更多
sed
sed是操作、过滤和转换文本内容的强大工具。常用功能有对文件实现快速增删改查,其中查询的功能中最常用的2大功能是过滤(过滤指定字符串)和取行(取出指定行)。
sed [选项] [sed内置命令字符] [输入文件]
选项:
-n 取消默认sed的输出,常与sed内置命令的p连用。
-i 直接修改文件内容,而不是输出到终端。如果不适用-i选项,sed只是修改在内存中的数据,并不会影响磁盘上的文件
-e 允许多次编辑
内置命令字符:
s 替换
g 全局 global
p 打印print
d delete