中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-05 23:18
48,039 主题排行 / 350,124 发帖 / 今日 2 篇 / 48,251 会员排行
DOS批处理 & 脚本技术(批处理室) » [求助]如何在一字符串中同时搜索2个匹配字符?
可打印版本  1,026 / 5
第1楼 uiopuiop 发表于 2007-10-04 10:46
中级用户 发帖 211 积分 400
[求助]如何在一字符串中同时搜索2个匹配字符?
某命令行程序运行完后出现一串字符,单结果有2个以上,又不可能再运行一次,如何在字符串中中查找2个以上匹配字符?

例如:
GOOD: OK!
ERROR: NETWORK NA!
ERROR: NO ACCESS RIGHT!

我要同时查找 ERROR 和 NETWORK 2个字符.

麻烦高手相助!
第2楼 everest79 发表于 2007-10-04 11:07
金牌会员 发帖 1,127 积分 2,564
test.exe | find /i "error"|find /i "network"
第3楼 wudixin96 发表于 2007-10-04 11:15
银牌会员 发帖 931 积分 1,928
test.exe|findstr /r /i /c:"error.*network"

[ Last edited by wudixin96 on 2007-10-4 at 12:38 PM ]
第4楼 everest79 发表于 2007-10-04 11:20
金牌会员 发帖 1,127 积分 2,564
Originally posted by wudixin96 at 2007-10-4 11:15 AM:
test.exe | findstr /i "error network"


这样findstr会将每一行含有error或network的字符串都标为正
条件式成了or而不是and
第5楼 uiopuiop 发表于 2007-10-04 13:55
中级用户 发帖 211 积分 400
高!
但如果字符串’NETWORK‘ 在’ERROR‘ 前面就不起作用了。必须注意查找字符串的先后顺序。
第6楼 wudixin96 发表于 2007-10-04 14:47
银牌会员 发帖 931 积分 1,928
test.exe|findstr /r /i "error.*network network.*error"
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023