标题: [文件操作] dir命令的findstr 在/r参数存在时,正则匹配是否有贪婪、懒惰模式之分? [打印本页]
作者: wqfans 时间: 2019-5-28 14:54 标题: dir命令的findstr 在/r参数存在时,正则匹配是否有贪婪、懒惰模式之分?
感觉dir命令的findstr /r这个不是纯粹的正则,只有一个*,匹配0或多次
只匹配1至多个字符用啥符号?百度、bing、Google搜了很多回,没见到
还有这个正则式,有懒惰和贪婪之分么?
感觉这个*总是以最大次数在吃字符,有没有啥办法让它匹配成懒惰模式
作者: xczxczxcz 时间: 2019-5-28 15:07
findstr 很影响性能。 用过的都知道。
作者: xczxczxcz 时间: 2019-5-28 15:11
比如以前用纯P 写的广告过滤规则(findstr) 1000条左右。用时几分钟。 而换PS后 1秒 完成。
作者: Batcher 时间: 2019-5-28 15:12
不能修改它的模式。
复杂的正则建议试试PowerShell
作者: WHY 时间: 2019-5-28 20:43
本帖最后由 WHY 于 2019-5-29 11:48 编辑
匹配1个或多个任意字符可以用 ..*
findstr 没有惰性模式,但应该可以变通,举例:
匹配 C:\123\xyz\a.txt 第一层目录(C:\123\):- echo;C:\123\xyz\a.txt|findstr /i "^[A-Z]:\\[^\\]*\\\\"
复制代码
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |