Board logo

标题: [文本处理] 求助批处理截取字符串代码查错 [打印本页]

作者: lzcykevin    时间: 2016-7-23 09:21     标题: 求助批处理截取字符串代码查错

本帖最后由 pcl_test 于 2016-7-23 15:30 编辑

下面是我写的字符串截取,功能是从文件中读取一行,如果遇到空格,则截取第一块字符,并截取第一块字符的首字母。
接着,截取第二行,第二行首字母,以此类推。

疑问如下:
第二处红色为什么要加“” 程序才能运行进去,如果不加“”为什么识别不了字符串呢?如果想识别这样的,该怎么判断呢?
我的tmpstr 是从文本中读取abc def ccc (从文本中读取数值,不加"")

第三处红色,截取字符串的首字母,但是HSTR显示的却是0,1,是数据出了问题?还是代码写的不对呢?该怎么改呢?


SETLOCAL ENABLEDELAYEDEXPANSION
set tmpstr=abc def ccc
:STR_VISTOR

for /f "tokens=1,*" %%a in ("!tmpstr!") do (
    echo a=%%a
    SET HSTR=!a:~0,1!
    @echo !HSTR!
    set tmpstr=%%b
    goto STR_VISTOR
)
)

endlocal

===========================================
问题已经解决,犯了很低级的错误,谢谢大家
===========================================
作者: gawk    时间: 2016-7-23 09:29


echo a=%%a
改成
set a=%%a
作者: lzcykevin    时间: 2016-7-23 09:33

回复 2# gawk


    谢谢,我没看出来这错误竟然。。




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2