您的位置:首页 > 运维架构 > Shell

shell中的正则表达式

2016-05-29 23:43 381 查看

1、正则与通配符

linux中的通配符是用来匹配文件名的,其匹配是完全匹配。只支持通配符则命令有ls find cp等命令

正则是用来匹配字符串的,是包含匹配。只要搜索的内容在某个字符串中,那么改字符串则被认为符合条件,支持的命令有grep awk sed。

2、规则











空白行的匹配,我们先看一下有空白行的文本文件是什么样的?



可以看到,当我们在写完一行属于回车时,其实是以$为结束标志的。所以正则表达式中匹配某行以xx结尾(如:.html$)结尾是由此而来的。图中的第三行是由多个空格组成的。那么我们如何去掉文本中的空白行呢?



注意这里的^有两个含义:表示开头,也表示非。



可以看到当匹配“^$”时,只显示出第二行,这表示以$开头的行。而当匹配“[^$]”时只有第二行没有显示。这时如果单纯将^理解为非时,则表示匹配没有$的行,那结果应该是都不显示。所以这里的^应该也有以$为开始的意思。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: