找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 10864|回复: 8

[文本处理] 求助批处理findstr命令文本匹配问题

[复制链接]
发表于 2024-12-5 16:35:11 | 显示全部楼层 |阅读模式
  1. echo "10__0__22000__613"|findstr /i /r /c:"[0-9]__[0-9]__[0-9]__[0-9]">nul&&(echo ok)||(echo no)
复制代码
各位大佬,这句代码错在哪了?如何匹配呢?
发表于 2024-12-5 16:43:01 | 显示全部楼层
  1. echo "10__0__2__6"|findstr /i /r /c:"[0-9]__[0-9]__[0-9]__[0-9]">nul&&(echo ok)||(echo no)
复制代码
 楼主| 发表于 2024-12-5 16:49:21 | 显示全部楼层
回复 2# idwma


    如何匹配10__0__22000__613呢
发表于 2024-12-5 17:04:02 | 显示全部楼层
每个数字对应一个[0-9]
 楼主| 发表于 2024-12-5 17:13:45 | 显示全部楼层
回复 4# 77七


    这就麻烦了
发表于 2024-12-5 17:16:44 | 显示全部楼层
回复 5# jun.


   你具体匹配什么?[0-9]* 表示数字重复0次或以上,详细教程板块有教学帖子
 楼主| 发表于 2024-12-5 17:33:26 | 显示全部楼层
回复  jun.


   你具体匹配什么?[0-9]* 表示数字重复0次或以上,详细教程板块有教学帖子
77七 发表于 2024-12-5 17:16



    谢谢,问题解决
发表于 2024-12-5 19:49:19 | 显示全部楼层
本帖最后由 aloha20200628 于 2024-12-5 19:59 编辑

回复 1# jun.

比较准确的匹配模式如下,分隔符之间须有数字才被认可

  1. echo "10__0__2__6"|findstr /i /r /c:"[0-9][0-9]*__[0-9][0-9]*__[0-9][0-9]*__[0-9][0-9]*">nul&&(echo ok)||(echo no)
复制代码
以下匹配模式则认可分隔符之间没有数字,即 “______” 也会被认可...

  1. echo "10__0__2__6"|findstr /i /r /c:"[0-9]*__[0-9]*__[0-9]*__[0-9]*">nul&&(echo ok)||(echo no)
复制代码
 楼主| 发表于 2024-12-9 17:19:50 | 显示全部楼层
回复 8# aloha20200628


    感谢大佬,解释的非常到位。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-17 16:06 , Processed in 0.019667 second(s), 7 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表