a亚洲精品_精品国产91乱码一区二区三区_亚洲精品在线免费观看视频_欧美日韩亚洲国产综合_久久久久久久久久久成人_在线区

首頁 > 編程 > BAT > 正文

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

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

@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

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 欧美一区视频 | 草草网| 一区二区日本 | 亚洲一区日本 | 91亚洲日本aⅴ精品一区二区 | 欧美精品二区中文乱码字幕高清 | 日本欧美在线 | 日韩大尺度在线观看 | 国产精品1区2区 | 日本一级二级三级久久久 | 亚洲乱码国产乱码精品精98午夜 | 久久久精品999 | 国产精品欧美日韩在线观看 | 成人a在线观看 | www污在线观看 | 精品成人| 久久久久网站 | 九色影院| 日韩精品免费在线视频 | 精品一二三区在线观看 | 国产精品久久久久久久午夜片 | 午夜黄色一级片 | 青青青免费在线视频 | 91高清在线 | 国产高清在线精品一区二区三区 | 天堂中文资源在线 | 国产激情毛片 | 亚洲视频手机在线观看 | 精品一区二区三区在线观看 | 国产精品美女久久久久高潮 | 狠狠躁夜夜躁人人爽天天高潮 | 国产精品片aa在线观看 | 欧美看片 | 在线看片网站 | 国产高潮呻吟久久渣男片 | 欧美.com| 国产一区二区精品在线观看 | 欧美一级片免费观看 | 中文字幕乱码亚洲精品一区 | 国产超碰人人爽人人做人人爱 | 亚洲97色 |