加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

有关正则匹配简单运用的一些理解1

发布时间:2020-12-14 04:33:52 所属栏目:百科 来源:网络整理
导读:正则匹配,有很高挑战性的思维项目。最近用得蛮多,有一些自己运用正则匹配的思索,记录下来,供以后重温。下面是要用到的截图,如下: 650) this.width=650;" src="http://img.jb51.cc/vcimg/static/loading.png" style="float:none;" title="1.png" alt="w
正则匹配,有很高挑战性的思维项目。
最近用得蛮多,有一些自己运用正则匹配的思索,记录下来,供以后重温。
下面是要用到的截图,如下:

wKioL1bWkXfTQqvZAAAY9O2r0wo658.png

开始第一个问题:

1.匹配带有后缀名的。

这个简单,带有后缀名,其实就是文件名有一个".",匹配这个点就可以。命令:

ls |grep "."

测试OK。

2.匹配没有后缀名的。和上面对立,不匹配"."。简单点命令:

ls |grep -v “."

测试OK。

3.匹配后缀名是两个字符的。正则写".[a-z0-9]{2}",命令:

ls |grep ".[a-z0-9]{2}"

测试结果如图:

wKioL1bWlKOhkcokAAAWq-twHss176.png

很明显,不仅后缀名两个字符的出现了,三个四个字符的也出现了。

反思为什么都出现了呢?

对比下写的正则:[a-z0-9]{2}。

这条正则的意义是:匹配字符或者数字两个。想想,后缀名3个或者4个的它都符合

匹配字符或者数字两个的正则。那如何只精确匹配两个字符呢?

引入:$。说明:$在正则里是指结尾。

命令改下如下:

ls |grep ".[a-z0-9]{2}$"

测试OK.

4.匹配前缀名3个字符的,后缀名3个字符的。命令如下:

ls |grep "^[a-z0-9]{3}.[a-z0-9]{3}$"

注意 ^ 和 $。

总结:匹配精确个数的情况下,可以引入^和$符号都精确定位。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读