everything是一款非常好用的电脑文件搜索软件,他不仅支持直接搜索文件名,还支持正则表达式搜索,利用正则表达式我们就可以轻易的找到电脑上所有的某一后缀文件。
1. 搜索所有的.ico文件
假如我们想找到电脑上所有后缀为.ico格式的文件,如果直接输出.ico,结果中会有很多我们不需要的文件,如下图,只要文件名包含了.ico,他都会给你列出来,这显然不是我们想要的。
下面我们用正则表达式来解决这个问题,打开everything,点击菜单栏的搜索,勾选“使用正则表达式”。
在搜索框中输入 ^[ws-]*(.ico){1}$ ,即可看到我们找到了所有的.ico格式的文件。
下面来看下这句正则表达式的含义,开头的^代表匹配被搜索字符串的开始位置,w表示任意本义字符,等价于 [a-zA-z0-9_],s表示任意空白(空格,换页符,换行符,制表符等等),这是考虑文件名可能包含空格,文件名一般就是包含这些,可能还有-,我们把它加上,*表示前面的字符出现的次数大于等于0,[]表示集合原子,因此[w-]*代表w或者-出现的次数大于等于0;()内的内容可以当作一个原子,使用.而不是.是因为.是特殊符号,需要用来转义。{1}表示前面的内容出现1次,因此(.ico){1}表示.ico出现一次,最后的$表示搜索字符串结束的位置。
那么整个正则表达式的含义就是搜索以.ico结尾的文件名,.ico之前可以是任意的本义字符([a-zA-z0-9_])、空格或者-。
2. 找到所有的任意格式文件
对以上的语句简单更改,把.ico换成任何自己需要的格式,即可得到需要的文件列表。比如搜索所有的.doc文件 ^[ws-]*(.doc){1}$ 。
3. 了解、查询正则表达式的几个网站
正则表达式的介绍都大同小异,可以根据自己的需要来写,并记录一些常用写法。
[1] https://tool.oschina.net/uploads/apidocs/jquery/regexp.html