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

前端之家收集整理的这篇文章主要介绍了有关正则匹配简单运用的一些理解1前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
正则匹配,有很高挑战性的思维项目。
最近用得蛮多,有一些自己运用正则匹配的思索,记录下来,供以后重温。
下面是要用到的截图,如下:

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\}$"

注意 ^ 和 $。

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

猜你在找的正则表达式相关文章