因为论坛练习题系列中确实缺少37题(这是本人的过失),所以就
以本题来做为37题吧。有文本a.txt如下:- amd cx qu
- k of woo is qmom
- jm ko ppp oe mie tnnn
- sis jb
复制代码 要求通过批处理去除文本行的前后空格(空格数是随机和末知的
,且都为半角空格),输出如下(行的前后请加上引号):- "amd cx qu"
- "k of woo is qmom"
- "jm ko ppp oe mie tnnn"
- "sis jb"
复制代码 本题满分10分,原则上以思路为重,视情况加分。
参考答案如下:
- @echo off
- for /f "delims=" %%a in (a.txt) do set "a="&call :lp "$%%a$"
- pause>nul&goto :eof
- :lp
- for /f "tokens=1* delims= " %%a in ("%a%%~1") do set "str=%%b"&set "var="
- for %%a in (%str: = # %) do call,set "var=%%a%%var%%"
- if "%~1" neq "" (set "a=%var:#= %"&call :lp) else echo "%var:#= %"
复制代码
[ 本帖最后由 batman 于 2009-8-15 18:44 编辑 ] |