- ::=======================获得字符串长度==============================
- ::返回值在中%strlen%
- :getStrLen mystr
- set "mystr=%~1"&set "strlen=0"
- if not defined mystr goto :eof
- for /l %%i in (0,1,8191) do (set strlen=%%i&if "!mystr:~%%i,1!"=="" (goto :eof))
- goto :eof
- ::==============END======获得字符串长度========== by hf-g ===========
复制代码 在这里可以看到当 "字符"==""时,就到了字符串的结尾,也可以是行尾.
另:我们知道回车符由换行(LF ,\n) 和回车(CR,\r) 两个不看见字符(VB中 Chr(10) & Chr(13))组成,可以用debug或第三方工具如sed具体确定,具体顺序是0D 0A.
findstr,sed等工具中用 $ 表示行尾,^表示行的开头. if语句没什么好方法. |