创新路
我们一直在努力

正则表达式练习

本次跟随书本进行正则表达式的练习,目标文本如下

image.png

先来最简单的,查找the字符

image.png

接下来进行反向选择,输出不包含the的行

image.png

同理,忽略大小写,加上参数-i就行了

接下来是查找集合字符,利用中括号[],本次目的是查找包含test或taste的行,可以看到,两者都有t?st这个字符段,使用[ea]表示匹配两个字母中的任意一个即可,如图

image.png

可见[]中的字符不管有多长,都只作为匹配条件,视作一个字符。

接下来练习[]中的反选功能,假如[^a]bc,这样匹配的意思就是,查找bc两个字符,但是bc之前的一个字符不可以是a。接下来练习如图

image.png

可以看到。18,19行oo前面出现了g,但是由于他们本行有其他符合条件的目标,所以也被显示出来了。

中括号 还有其他用法,可以用[a-z]表示匹配所有小写字符[0-9]匹配所有数字,不一一做演示了。

接下来是关于行首与行尾的匹配,使用^符号匹配行首,使用$匹配行尾。

假如查找只在行首出现的the,如图

image.png

假如查找在行尾出现的d,如图

image.png

此时就有个举一反三了,使用cat -A可以看到,文件的末尾有个空行。空行居然直接就是一个行尾标志$,如图

image.png

我们可以尝试匹配空行,使用'^$'

image.png

客官点个赞呗! (0)
分享到:

评论 抢沙发

评论前必须登录!

天府云博 - 做有态度的开发&运维&设计学习分享平台!

联系我们百度云主机