禁用賬戶無法判斷空格bug修復(2)——倒取尾部空格

尾部空格bug:
若變量f值字符串中尾部含有空格,如何將其忽略而保留中間空格符?

修復代碼:

@echo off&setlocal enabledelayedexpansion
set a=ad 我  
for /l %%a in (0,1,65535) do if "!a:~%%a,1!"=="" set /a b=%%a-1&goto a
:a
for /l %%a in (%b%,-1,0) do if not "!a:~%%a,1!"==" " set /a b=%%a+1&goto b
:b
for /f "delims=" %%a in ("%b%") do set f=!a:~0,%%a!
for /l %%a in (0,1,20) do if not "!f:~%%a,1!"=="" (set /p=!f:~%%a,1!<nul>c.txt&if "!f:~%%a,1!"==" " set /p=a<nul>c.txt)&for /f "delims=" %%a in ('dir c.txt^|find "文"') do set c=%%a&if not "!c:~34,1!"=="0" echo !c:~34,1!
pause>nul

運行過程:
 1.判斷變量a值總字符串長度。
 2.取長度值進行單個負判斷,當識別到不是空格後,將剩餘未識別字符串總長度輸出至變量b,包括空格符。
 3.利用變量b的長度值,提取剩餘字符串輸出至變量f。
 4.f值最後被用於強制輸出。

最終運行結果如下:



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章