使用MS-DOS 8.0,确定字符串长度的最佳方法是什么?
我浏览了计算机希望(http://www.computerhope.com/msdos.htm),但没有命令跳出来......
是否有内置命令或必须构建一个函数来解决这个问题?
非常感谢。
答案 0 :(得分:3)
从here我得到了一个例子,这就是它清理了一点
@echo off
setlocal
set #=%1
set length=0
:loop
if defined # (set #=%#:~1%&set /A length += 1&goto loop)
echo %1 is %length% characters long!
endlocal
答案 1 :(得分:2)
这是另一种选择。将字符串作为参数传递:
LEN "this is a long string"
以下是代码:
@echo off
echo.%~1>len
for %%a in (len) do set /a len=%%~za -2
echo %len%
将代码复制并粘贴到记事本中,并将其另存为LEN.BAT。
注意:如果输入NUL字符串,则在ECHO语句后面的完整停止是至关重要的。 -2是必需的,因为ECHO会自动添加CR& LF在每一行的末尾。
答案 2 :(得分:1)
我经常使用以下方法:
@echo off
set str=This is a line of text
echo.%str%>len
for %%a in (len) do set /a len=%%~za -2
echo %len%