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

批处理for语句从入门到精通配套练习题

[复制链接]
发表于 2009-7-23 17:53:25 | 显示全部楼层
A1
@echo off
set str=I love,bbs;bathome.net
for %%i in (%str%) do echo %%i
pause
A2
还不会做,先看看别人的再说

评分

参与人数 1PB +1 收起 理由
wxcute + 1 加油。

查看全部评分

发表于 2009-7-23 18:09:51 | 显示全部楼层
参考了别人的,不知道这样算不算合格
A2
@echo off
set str=I love,bbs;bathome.net
for %%i in (%str%) do if %%i==cn echo cn
pause>nul
发表于 2009-7-23 18:14:52 | 显示全部楼层

回复 71楼 的帖子

好像在cn后面还加了个逗号吧,我去掉逗号后,好像没有cn的字样出来,就一个嘿板在那。
发表于 2009-7-23 18:59:29 | 显示全部楼层

回复 79楼 的帖子

你在说那个楼层的代码?
逗号也是for语句中默认的分隔符。
发表于 2009-7-26 14:44:53 | 显示全部楼层
A1:假设令 set str=I love,bbs;bathome.net,请分别显示出I、love、bbs、bathome和cn这五个字符串。目的:了解for语句用到了哪些符号作为元素的分隔符。
set  “str=I love,bbs;bathome.net”
for /f "tokens=1-5 delims=,;= " %%i in (%str%) do echo %%i %%j %%k %%m %%n

A2:条件同A1,要求最后只显示cn这个字符串。目的:了解for语句的执行流程
set  “str=I love,bbs;bathome.net”
for /f "tokens=2 delims== " %%i in (%str%) do echo %%i

评分

参与人数 1PB +1 收起 理由
wxcute + 1 解释得不错。

查看全部评分

发表于 2009-7-26 22:31:01 | 显示全部楼层
A1:
@echo off
set str=I love,bbs;bathome.net
for %%i in (%str%) do echo %%i
pause

A2:
@echo off
setlocal enabledelayedexpansion
set str=I love,bbs;bathome.net
for %%i in (%str%) do (
set str=%%i
)
echo !str!
pause


新手。请多指教!!

评分

参与人数 1PB +1 收起 理由
wxcute + 1 请用CODE将代码闭合!

查看全部评分

发表于 2009-7-29 08:46:12 | 显示全部楼层

回复 1楼 的帖子

感谢分享,顶!!!!!!!!!!!!!!
发表于 2009-7-29 10:11:12 | 显示全部楼层

回答

A1
@echo off
set str=I love,bbs;bathome.net
for /f "tokens=1-5 delims=,;=" %%a in ("%str%") do @echo %%a %%b %%c %%d %%e
pause
A2
@echo off
set str=I love,bbs;bathome.net
for /f "tokens=2 delims==" %%a in ("%str%") do @echo %%a
pause
发表于 2009-7-30 18:19:03 | 显示全部楼层
pause>nul 有什么实际作用吗
发表于 2009-7-30 18:53:16 | 显示全部楼层

回复 85楼 的帖子

有阿,作用就是暂停而不显示提示文字。
发表于 2009-7-31 01:54:00 | 显示全部楼层

请老师检查

 A1:假设令 set str=I love,bbs;bathome.net,请分别显示出I、love、bbs、bathome和cn这五个字符串。目的:了解for语句用到了哪些符号作为元素的分隔符。

@echo off
     set str=i love,bbs;bathome.net,
    for %%i in (%str%) do echo %%i
     pause

  A2:条件同A1,要求最后只显示cn这个字符串。目的:了解for语句的执行流程。
@echo off
set str=I love,bbs;bathome.net
for /f "tokens=2 delims==" %%i in ("%str%") do echo %%i
pause
发表于 2009-8-1 17:16:12 | 显示全部楼层

我来迟了

A1
  1. @echo off
  2. set str=i love,bbs;bathome.net
  3. for %%i in (%str%) do echo %%i
  4. pause > nul
复制代码
A2
  1. @echo off
  2. set str=i love,bbs;bathome.net
  3. for %%i in (%str%) do echo %%i > a.txt
  4. type a.txt & del a.txt
  5. pause > nul
复制代码

[ 本帖最后由 nopr 于 2009-8-1 17:34 编辑 ]

评分

参与人数 1PB +2 收起 理由
wxcute + 2 嗯,不错,第二题方法比较新颖。

查看全部评分

发表于 2009-8-8 16:44:43 | 显示全部楼层
A1:假设令 set str=I love,bbs;bathome.net,请分别显示出I、love、bbs、bathome和cn这五个字符串。目的:了解for语句用到了哪些符号作为元素的分隔符。

@echo off
set str=I love,bbs;bathome.net
for %%a in (%str%) do echo %%a
pause>nul

A2:条件同A1,要求最后只显示cn这个字符串。目的:了解for语句的执行流程。


@echo off
set str=I love,bbs;bathome.net
for %%a in (%str%) do  if %%a==cn echo %%a
pause>nul

请老师检查
发表于 2009-8-10 12:49:22 | 显示全部楼层

  1. @echo off
  2.      set str=i love,bbs;bathome.net,
  3.     for %%i in (%str%) do echo %%i
  4.      pause
  5.    
复制代码
发表于 2009-8-15 04:20:37 | 显示全部楼层
  1. @echo off
  2. set str=i love bbs bathome.net
  3. for %%a in (%str%) do echo %%a
  4. pause
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-16 22:41 , Processed in 0.023919 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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