国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > BAT > 正文

計算字符串的長度的多種解決方案集錦

2020-06-09 13:46:37
字體:
來源:轉載
供稿:網友
代碼如下:
@echo off & setlocal EnableDelayedExpansion
:: 計算字符串的長度
::
::
:began
set mystr=
set /p mystr=輸入要計算長度的字符串(直接回車退出):
if not defined mystr goto :eof
for /l %%i in (0,1,1000) do if "!mystr:~%%i,1!"=="" set strlen=%%i && goto :_endfor
:_endfor
::echo 字符串: "%mystr%"
echo 長 度: %strlen%
set strlen=
goto began
 

該方案的缺陷是:當字符串長度超過1000的時候,將不能探測到;不過變量能接收的長度好象還不能超過1000

另外一種方案:

代碼如下:
@echo off
:: Based on willsort's codes code by JM 2006-10-9 CMD@XP
:: 出處:http://www.cn-dos.net/forum/viewthread.php?tid=19819
set mystr=
set /p mystr=輸入要計算長度的字符串(直接回車退出):
if not defined mystr goto :eof
set count=0
setlocal enabledelayedexpansion
:intercept
set /a count+=1
for /f %%i in ("%count%") do if not "!mystr:~%%i,1!"=="" goto intercept
echo 長 度: %count%
pause
goto :eof

@echo off
::
::
:began
set /p mystr=輸入要計算長度的字符串:
echo %mystr:~0,1% | findstr /i "q" 1>nul 2>nul && exit rem 輸入q退出

call :bflen "%mystr%" rem 這兩句調用bflen,返回長度到變量ret中。
echo 字符串: "%mystr%"
echo 長 度: %ret%

goto began

:bflen rem 真麻煩,初始化要單獨拿出來。
set num=
set str=
set ret=
set str=%1
:len rem 計算字符串長度
set str=%str:~0,-1%
set /a num = %num% + 1
if defined str goto len
set /a ret = %num% - 2
set num=
goto :eof

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 苏尼特左旗| 霍林郭勒市| 金溪县| 河间市| 西吉县| 沙坪坝区| 九龙县| 二手房| 常山县| 石首市| 农安县| 杂多县| 莎车县| 若尔盖县| 道真| 丰城市| 安泽县| 天长市| 南阳市| 衡东县| 大姚县| 潼南县| 玉山县| 梁平县| 大宁县| 高要市| 岚皋县| 巨野县| 如皋市| 蓝田县| 南汇区| 巫溪县| 喜德县| 乌什县| 浏阳市| 阳西县| 仙游县| 伊吾县| 万安县| 贡嘎县| 孙吴县|