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

[文本处理] 求助批处理截取字符串代码查错

本帖最后由 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

===========================================
问题已经解决,犯了很低级的错误,谢谢大家
===========================================

回复 2# gawk


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

TOP


echo a=%%a
改成
set a=%%a
Talk is cheap. Show me the code.
没事不要瞎扯淡,有能耐就把代码贴出来给我看。

TOP

返回列表