中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-09 13:59
47,811 主题排行 / 349,895 发帖 / 今日 0 篇 / 48,254 会员排行
DOS批处理 & 脚本技术(批处理室) » for中的delims=可以是字符窜吗?
可打印版本  6,078 / 29
第1楼 26933062 发表于 2007-05-25 23:42
银牌会员 发帖 879 积分 2,268
for中的delims=可以是字符窜吗?
我想用for命令这样行吗?

@echo off
set "var=333ps555psssword=123 456 789"
for /f "tokens=1* delims=psssword" %%i in ("%var%") do set str=%%i&set num=%%j
echo %str% %num%
pause

我的本意是
设 str=333ps555
num==123 456 789
可结果却是
str=333
num=555psssword=123 456 789


为什么我运行的结果是以 p 或 s 为分隔符的啊?而不是以psssword为分隔符?

[ Last edited by 26933062 on 2007-8-13 at 12:13 AM ]
第2楼 bjsh 发表于 2007-05-26 00:07
银牌会员 发帖 621 积分 2,000
delims=psssword
将会以这些字母做为分割符;不只是p和s,w,o,r,d也将被用做分割符;

delims不能将字符串做为分割符;
第3楼 26933062 发表于 2007-05-26 00:10
银牌会员 发帖 879 积分 2,268
哦.原来这样,就是说只能以一个单一的字母或符号作分隔符 是吗?

[ Last edited by 26933062 on 2007-8-11 at 05:59 AM ]
第4楼 lxmxn 发表于 2007-05-26 00:36
版主 发帖 4,938 积分 11,386
Originally posted by 26933062 at 2007-5-26 00:10:
哦.原来这样,就是说只能以一个单一的字母或符号作分隔符 是吗?

for 命令的 delims 选项是这样的。

要以 psssword 这个字串为分隔符,我仅仅知道 gawk 这个工具可以,在论坛搜索一下可以找到下载地址。

第5楼 26933062 发表于 2007-05-26 00:40
银牌会员 发帖 879 积分 2,268
哦.谢谢了,用工具就不用了,......
主要是学批处理,,,,
第6楼 lxmxn 发表于 2007-05-26 00:49
版主 发帖 4,938 积分 11,386
Originally posted by 26933062 at 2007-5-26 00:40:
哦.谢谢了,用工具就不用了,......
主要是学批处理,,,,


有时用一些工具可以解决很多问题的,但我不强求。

虽然 for 命令的 delims 选项不支持字串的分割,但是如果想达到你的目的,换一个思路或许也可以:
第7楼 sunshine217 发表于 2007-06-02 21:25
新手上路 发帖 1 积分 0
dd
第8楼 baikaifang 发表于 2007-06-02 21:53
初级用户 发帖 32 积分 68
各位大侠们呀,为什么都不写命令的注释啊,让我们这些菜鸟看了一头雾水呀,里面用到的一些怪子符,网上也找不到用法啊.结果看了等于没看.不知道每条命令具体的含义,遇到别的问题的时候就不能举一反三.唉
第9楼 qingfushuan 发表于 2007-06-04 11:57
高级用户 发帖 327 积分 502
Originally posted by baikaifang at 2007-6-2 09:53 PM:
各位大侠们呀,为什么都不写命令的注释啊,让我们这些菜鸟看了一头雾水呀,里面用到的一些怪子符,网上也找不到用法啊.结果看了等于没看.不知道每条命令具体的含义,遇到别的问题的时候就不能举一反三.唉



雾里看花啊,3D图片就是这样看出来的,坚持看上3个月,你就清楚了,我就是去年12

月开始雾里看花的啊,现在看3D图片了
第10楼 step2step 发表于 2007-06-04 15:05
初级用户 发帖 25 积分 44
前面看懂了,后面是天书
第11楼 huyujuen121 发表于 2007-08-03 08:28
新手上路 发帖 5 积分 9
是啊都是天书。。
第12楼 slore 发表于 2007-08-03 10:12
铂金会员 发帖 2,478 积分 5,212
3D图片几秒就可以了啊
第13楼 sting 发表于 2007-08-08 10:02
初级用户 发帖 23 积分 45
^_^ 难懂啊
第14楼 1112yuhua 发表于 2007-08-16 01:26
初级用户 发帖 44 积分 106
lxmxn版主果然高,把password用_来替换了。
第15楼 liuyun20 发表于 2007-10-18 22:56
初级用户 发帖 14 积分 36
顶了!!
set "var=%var:psssword=_%",把password用_来替换了.
学习了.
1 2  下一页
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023