标题: [文本处理] 批处理命令for/f如何处理几十个字符串? [打印本页]
作者: woodywoola 时间: 2012-2-22 10:04 标题: 批处理命令for/f如何处理几十个字符串?
- @echo off
- for /f "tokens=1-3 delims=," %%i in ("733100,72549,99") do (
- echo %%i
- echo %%j
- echo %%k
- pause
- )
复制代码
像这样的处理 如果有几十个数据 那变量怎么写?
作者: BAT1 时间: 2012-2-22 10:11
本帖最后由 BAT1 于 2012-2-22 10:14 编辑
把数据切的短一点不行吗 ?
几十个数据全部都要引用?还是一行数据有几十组,只需要取其中的几组或十几组。
作者: woodywoola 时间: 2012-2-22 10:24
从一个txt文档里根据分隔符取出来,然后一个一个处理再输出。
怎么做?
作者: QIAOXINGXING 时间: 2012-2-22 12:30
能不能把分割符全部替换为空格,然后:- @echo off&setlocal enabledelayedexpansion&cd /d "%~dp0"
- for /f "delims=" %%i in (test.txt) do (
- for %%a in (%%i) do (echo %%a)
- )
-
- pause
复制代码
作者: ivor 时间: 2012-2-22 13:06
回复 4# QIAOXINGXING
CD 命令可以省略
作者: QIAOXINGXING 时间: 2012-2-22 15:01
本帖最后由 QIAOXINGXING 于 2012-2-22 15:03 编辑
回复 5# ivor
呵呵,,,新建的模板是这样的,懒得删了。。。。。
变量延迟貌似也没用上。。。。
作者: lvsehuaxue 时间: 2012-2-22 20:17
用不带开关的for。- @echo off
- for %%i in ("733100,72549,99") do for %%i in (%%~i) do echo %%i
- pause
复制代码
作者: apang 时间: 2012-2-22 22:48
回复 4# QIAOXINGXING
不用替换成空格,“,”本身就是分割符吧?- @echo off
- for /f "delims=" %%i in (test.txt) do for %%j in (%%i) do echo %%j
- pause
复制代码
作者: Perl 时间: 2012-2-22 23:01
回复 3# woodywoola
把文档内容贴出来看看吧
作者: cjiabing 时间: 2012-2-22 23:25
山有尽,水有穷,批处理有不足。另外想拓展的办法。逐节来也是可行的,或者用for嵌套也可以。但避免使用太多变量才是主要的思路。
作者: QIAOXINGXING 时间: 2012-2-23 00:21
回复 QIAOXINGXING
不用替换成空格,“,”本身就是分割符吧?
apang 发表于 2012-2-22 22:48
对啊,空格,逗号,分号,等号,都是分隔符,,,,
现在不少东西还没接触,接触的也只学了个大概,很多细节都不太清楚啊。。。。。
欢迎光临 批处理之家 (http://bathome.net./) |
Powered by Discuz! 7.2 |