欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

bash 中用于grep的正则表达式

程序员文章站 2022-03-10 22:18:09
正则表达式是一类用于匹配文本的表达方式,常用于grep命令中表达检索条件。其实就是相当于你在用百度搜索时规定一些高级要求,例如你想找百度一个叫做詹姆斯的人的照片,你会发现出...

正则表达式是一类用于匹配文本的表达方式,常用于grep命令中表达检索条件。其实就是相当于你在用百度搜索时规定一些高级要求,例如你想找百度一个叫做詹姆斯的人的照片,你会发现出来一大堆骑士队的詹姆斯,这时候你就需要高级要求:搜索除了勒布朗之外的詹姆斯。而正则表达式就是用在这里的。

学习正则表达式简直就是非人的工作,因为它根本就不是按照正常人的思维工作的,所以要有心理准备。

我在刚开始学习时看了很多正则表达式的用法,后来发现,原来在不同的环境中正则表达式是不同的,这其中就体现在某些词需不需要转义符\以及元字符集,所以在这里将bash中用于grep的正则表达式相关内容整合一下.

文本搜索工具grep基本用法

功能:输入文件的每一行中查找字符串。

基本用法:

grep [-acinv] [–color=auto] [-a n] [-b n] ‘搜寻字符串' 文件名

参数说明:

-a:将二进制文档以文本方式处理

-c:显示匹配次数

-i:忽略大小写差异

-n:在行首显示行号

-a:after的意思,显示匹配字符串后n行的数据

-b:before的意思,显示匹配字符串前n行的数据

-v:显示没有匹配行-a:after的意思,显示匹配部分之后n行-b:before的意思,显示匹配部分之前n行

–color:以特定颜色高亮显示匹配关键字

文本搜索工具grep正则表达式元字符集

^

锚定行的开始 如:'^grep'匹配所有以grep开头的行。

$

锚定行的结束 如:'grep$'匹配所有以grep结尾的行。

.

匹配一个非换行符的字符 如:'gr.p'匹配gr后接一个任意字符,然后是p。

*

匹配零个或多个先前字符 如:'grep'匹配所有一个或多个空格后紧跟grep的行。 .一起用代表任意字符。

[]

匹配一个指定范围内的字符,如'[gg]rep'匹配grep和grep。

[^]

匹配一个不在指定范围内的字符,如:'[^a-fh-z]rep'匹配不包含a-r和t-z的一个字母开头,紧跟rep的行。

(..)

标记匹配字符,如'(love)',love被标记为1。

\<

锚定单词的开始,如:'\

以上所述是小编给大家介绍的bash 中的正则表达式,希望对大家有所帮助