标题: [文本处理] 批处理如何将用户的输入(中间用空格隔开)分开输出? [打印本页]
作者: canyuexiaolang 时间: 2011-10-6 12:24 标题: 批处理如何将用户的输入(中间用空格隔开)分开输出?
简单说
比如用户出入 :aaa ccc 2 cscs 8787 v5v5
把这个字符串分行输出。
aaa
ccc
....
忘了怎么写了。。= = 额哈。求代码。。最好用for。、
作者: 601997526 时间: 2011-10-6 12:58
- @echo off
- set p=aaa ccc 2 cscs 8787 v5v5
- for %%i in (%p%) do echo %%i
- pause
复制代码
是这样吗?
作者: 601997526 时间: 2011-10-6 13:09
也可以用set替换- @echo off&setlocal ENABLEDELAYEDEXPANSION
- set a=^
-
-
- set p=aaa ccc 2 cscs 8787 v5v5
- echo %p: =!a!%
- pause
复制代码
作者: canyuexiaolang 时间: 2011-10-6 13:39
天啊天啊天啊。。。- -
我不行了。。我还是去死吧。。。额。。。
这么简单都忘了!!!!
要常温习啊
作者: Hello123World 时间: 2011-10-6 14:14
回复 3# 601997526
还必须得空两行,其中道理,至今没有想明白……
作者: awk 时间: 2011-10-6 15:09
回复 5# Hello123World
一行可以这样写:- @echo off
- set str=2011-10-01
- setlocal enabledelayedexpansion
- set str=!str:-=^
-
- !
- echo,!str!
- pause
复制代码
作者: wc726842270 时间: 2011-10-6 16:04
回复 5# Hello123World
示例:
set LineFeed=^
变量LineFeed被赋值为一个换行符(0x0a,\n,Lf)
第一个和第三个换行符被当做行结束标志,第二个被^转义成普通字符;
引用时需要用变量延迟的形式,否则就会在预处理中被当做行结束符而被过滤掉
原文:http://www.bathome.net/viewthrea ... p%3Bfilter%3Ddigest
重点:http://bbs.bathome.net/viewthread.php?tid=6692
PS:2个文章都非常不错,只不过是依题而论,
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |