grep之正则表达式的理解及应用

author author     2022-09-11     238

关键词:

  正则表达式在本周学习中是个难点和重点,其中难免会有很多坑,也难免会不停的往里跳,当跳的比较多了也就长记性了,通过很多次练习慢慢也就能发现其中暗藏玄机,成功的避开大坑选择往小坑里跳了,我相信在以后的学习中会不断进步、勤加练习终究会跳出来的。好了,以下是本人对正则表达式的一点理解,如有错误之处请联系我,会修改和学习的。

  一、正则表达式之grep.

 正则表达式是一种符号表示法,用于识别文本模式。Linux处理正则表达式的主要程序是grep。grep搜索与正则表达式匹配的,并将结果输送至标准输出。

    (1)正则表达式之匹配模式。

     ①格式

     grep按下述方式接受选项和参数(其中,REGEXP表示正则表达式)

     grep [option] REGEXP file

  ②具体选项



   选项       含义                功能描述
-iignore case忽略大小写
-vinvert match不匹配匹配的
-lfile-with-match输出匹配的文件名
-Lfile-without-match输出不匹配的文件名
-ccount输出匹配的数目(行数)
-nnumber输出匹配行的同时在前面加上文件名及在文件名中的行数
-hno-filename抑制文件名的输出

  ③举例说明


  1、 显示/proc/meminfo文件中以大小s开头的行

  技术分享 

  2、显示/proc/meminfo文件中不以s开头的行

  技术分享

  3、显示/proc/meminfo文件中大s开头的行数

  技术分享

  4、显示/proc/meminfo文件中大s开头的行数并且在文件名上加上行数

  技术分享

                          华丽的分割线                                                    


 二、下表包含了元字符的列表以及它们在正则表达式上下文中的行为:

   

   字符
                 说明
^匹配输入字符串开始的位置。如果设置了 RegExp 对象的 Multiline 属性,^ 还会与“ ”或“ ”之后的位置匹配。
$匹配输入字符串结尾的位置。如果设置了 RegExp 对象的 Multiline 属性,$ 还会与“ ”或“ ”之前的位置匹配。
*零次或多次匹配前面的字符或子表达式。例如,zo* 匹配“z”和“zoo”。* 等效于 {0,}。
+
一次或多次匹配前面的字符或子表达式。例如,“zo+”与“zo”和“zoo”匹配,但与“z”不匹配。+ 等效于 {1,}。
?零次或一次匹配前面的字符或子表达式。例如,“do(es)?”匹配“do”或“does”中的“do”。? 等效于 {0,1}。
{n}n 是非负整数。正好匹配 n 次。例如,“o{2}”与“Bob”中的“o”不匹配,但与“food”中的两个“o”匹配。
{n,}n 是非负整数。至少匹配 n 次。例如,“o{2,}”不匹配“Bob”中的“o”,而匹配“foooood”中的所有 o。“o{1,}”等效于“o+”。“o{0,}”等效于“o*”。
{n,m}M 和 n 是非负整数,其中 n <= m。匹配至少 n 次,至多 m 次。例如,“o{1,3}”匹配“fooooood”中的头三个 o。‘o{0,1}‘ 等效于 ‘o?‘。注意:您不能将空格插入逗号和数字之间。
|或的意思。例如:"AAA|BBB"满足的例子AAA、BBBpp
.任意字符。例如:"a.c"满足的例子abc、fapcc
()将候选的所有元素放在()内,用|隔开。例如:"a(1|2|3)bc"满足的例子a1bc、mba3bcd
[:alnum:]字母和数字,与[A-Za-z0-9]等价
[:alpa:]字母,与[A-Za-z]等价
[:digit:]数字,与[0-9]等价
[:xdigit:]十六进制字符,与[0-9A-Fa-f等价]
[:blank:]空格和制表符
[:lower:]小写字母
[:upper:]大写字母

通配符与正则表达式元字符的理解及grep的实例应用

什么是通配符(glob)?    通配符是Linux shell中用来描述(匹配)不确定字符的特殊符号.看看具体通配符是如何描述字符?    *       代表任意字符任意次数    ?&nbs... 查看详情

shell脚本——正则表达式(包含grep详细介绍及应用)(代码片段)

正则表达式正则表达式的作用前言案例:使用^和$判断用户输入的是否是数字基础正则表达式元字符基础正则表达式元字符案例扩展正则表达式元字符扩展正则表达式元字符案例正则表达式元字符综合案例三剑客grep详解grep的... 查看详情

21.egrep进阶及文本处理工具应用

...文本过滤工具(模式:pattern)工具;  grep:基本正则表达式,-E,-F  egrep:扩展正则表达式,-G,-F  fgrep:不支持正则表达式egrep:  支持扩展的正则表达式实现类似于grep文本过滤功能:grep-E  grep[OPTIONS]PATTERN[FILE...... 查看详情

文本处理三剑客之grep(代码片段)

...ep:文本过滤(模式:pattern)工具grep,egrep,fgrep(不支持正则表达式搜索)作用:文本搜索工具,根据用户指定的“模式”对目标文本逐行进行匹配检查;打印匹配到的行模式:由正则表达式字符及文本字符所编写的过滤条件grep命... 查看详情

grep及正则表达式

grep及正则表达式详解·grep    即GlobalResearch,根据模式(pattern->文本字符和正则表达式的元字符组成的匹配条件),搜索文本,并将符合模式的文本行显示出来的工具,相应的还有egrep和fgrep,使用格式:grep[options]pa... 查看详情

正则表达式及grep

正则表达式及grep #以下所有的举例是用正则表达式的方式 #正则表达式#由一类特殊字符及文本所编写的模式#分两类:      基本正则表达式:BRE      扩展正则表达式:ERE 字... 查看详情

grep及正则表达式

...合模式的文本行显示出来    使用基本正则表达式定义的模式来过滤文本的命令  Pattern:模式,文本字符和正则表达式的元字符组合而成匹配条件  #grep[OPTIONS]PATTERN[FILE...]&nb 查看详情

grep及正则表达式

...模式的文本行显示出来。 过滤条件:文本字符和正则表达式的元字符组合而成匹配条件    以正则表达式的元字符,以及正常字符组合而成。即pattern(模式)grep命令语法:grep[options]PATTERN[FILE...]   & 查看详情

grep及正则表达式用法总结(代码片段)

...数据分析后,取出我们想要的,或者是经由关键字、正则表达式匹配选出我们想要的那一行。grep的用法及选项如下所示:grep:文本过滤工具用法1:grep[OPTIONS]PATTERN[FILE...]用法2:grep[OPTIONS][-ePATTERN|-fFILE][FILE...]-v:取反,显示文本... 查看详情

grep与egrep命令及正则表达式

...)。grep系可分为grep、egrep、fgrep(默认情况下不开启正则表达式)。grep系的功能:利用正则表达式全局搜索,并将匹配的都显示出来 grep的用法格式: grep[options]PATTERN[FILE. 查看详情

grep命令及正则表达式

...式所匹配到的行。基本语法grep[option]‘PATTERN‘file,...正则表达式:是一类字符所书写出的模式(pattern)元字符:不表示字符本身的意义,用于额外功能性的描述此处表达式分为基本正则表达式和 查看详情

grep及正则表达式

...并将符合模式的文本行显示出来。Pattern:文本字符和正则表达式的元字符组合而成的匹配条件grep[OPTIONS]PATTERN[FILE...]eg    -i:忽略字符大小写    --color:把匹 查看详情

grep及正则表达式含(含断言)

grep和正则表达式1.grep:GlobalsearchREgularexpressionandPrintoutthefile   作用:文本搜索工具,根据用户指定的模式对目标文件逐行进行匹配,打印匹配到的行   模式:由正则表达式字符及文本字符编写的过滤条件   &n... 查看详情

grep及正则表达式

...将符合模式的文本行显示出来。Pattern:文本字符和正则表达式的元字符组合而成的匹配条件grep[OPTIONS]PATTERN[FILE...] -i:忽略大小写 --color:匹配高亮颜色 -v:显示没被匹配到的行 -o:只显示被模式匹配到的字符串正... 查看详情

linux正则表达式及grep命令

...首发自公众号“小汪Waud”。本期介绍在Linux环境下的正则表达式及grep命令。正则表达式(RegularExpression)是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符及这些字符的特定组合,组成一个“规则字符串”,这... 查看详情

grep及扩展正则表达式

正则表达式有两类,分为基本正则表达式和扩展正则表达式,是使用命令egrep来使用扩展正则表达式,它与grep很多功能相同,仅在元字符上实现了些扩展,在元字符的表示上与基本正则表达式略不同。1.命令格式:egrep[option]patter... 查看详情

正则表达式及grep

正则表达式:正则表达式是基于样式匹配的文本处理技术的关键所在。正则表达式的基本组成部分:^:行起始标记$:行尾标记.:匹配任意一个(单个)字符[]:匹配包含在[字符]之中的任意一个字符[^]:匹配除[^字符]之外的任意一个字... 查看详情

linux使用之grep,shell脚本(一)

...全局搜索的意思。全称中的“RegularExpression”意思为正则表达式。所以从全称中就可以理解为gerp是一个可以利用正则表达式的全局搜索工具。grep会按照正则表达式的匹配原则在文本文件中按照逐行匹配处理的方法来处理文本并... 查看详情