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

首頁 > 編程 > BAT > 正文

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

2020-07-26 20:25:25
字體:
來源:轉載
供稿:網友
復制代碼 代碼如下:

@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

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 水富县| 东光县| 神农架林区| 玉龙| 嘉义市| 福清市| 南乐县| 石嘴山市| 宁陕县| 建水县| 安泽县| 台江县| 霍邱县| 金堂县| 呼玛县| 贺州市| 贞丰县| 康马县| 贺兰县| 闽侯县| 宿松县| 浙江省| 松阳县| 花莲县| 双辽市| 长治县| 巍山| 罗田县| 景谷| 大方县| 弥渡县| 张掖市| 敦煌市| 樟树市| 八宿县| 札达县| 安陆市| 建德市| 宣化县| 鄂州市| 正镶白旗|