[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
?匹配0个、1个,??匹配0个、1个、2个
bat小白,请多指教!谢谢!

TOP

本帖最后由 77七 于 2024-2-2 13:49 编辑

回复 5# qixiaobin0715


   
谢谢大佬指点!
经过测试发现,当一个?或者连续多个?出现在开头,且点号之前不全是?(出现其它字符),其它字符之前的?只匹配1个,其它字符之后的?匹配0个,1个。


  1. @echo off
  2. >123.txt cd.
  3. dir /b /a-d ????.txt
  4. echo=
  5. dir /b /a-d ??3.txt
  6. echo=
  7. dir /b /a-d ??3?.txt
  8. pause
复制代码


三个dir 命令全部匹配成功

另外发现问号"?"对点号 "."匹配失败
  1. @echo off
  2. >12.3.txt cd.
  3. dir /b /a-d ???3.txt
  4. echo=
  5. dir /b /a-d ??.3.txt
  6. pause
复制代码
bat小白,请多指教!谢谢!

TOP

回复 4# hnfeng


发现32个[0-9a-z]提示过长,所以用了两个findstr匹配
  1. dir /b /a-d |findstr /rixc:"................................\.bin" |findstr /rixc:"[0-9a-z][0-9a-z]*\.bin"
复制代码
bat小白,请多指教!谢谢!

TOP

回复 19# WHY


   谢谢大佬指点!findstr 正则不支持指定重复次数,太遗憾了..
bat小白,请多指教!谢谢!

TOP

返回列表