我試圖從批處理中刪除字符串中的第一個字。Windows批處理 - 從字符串中刪除第一個字
例:「這小子愛批」到「孩子愛批」
我曾嘗試:
@echo off
set /p text=text:
for /f "tokens=1,*" %%a in ("%text%") do set updated=%%a
echo %updated%
pause
它只是輸出的第一個字,不刪除第一個字。
我該如何刪除第一個單詞,並保留字符串的其餘部分?
我試圖從批處理中刪除字符串中的第一個字。Windows批處理 - 從字符串中刪除第一個字
例:「這小子愛批」到「孩子愛批」
我曾嘗試:
@echo off
set /p text=text:
for /f "tokens=1,*" %%a in ("%text%") do set updated=%%a
echo %updated%
pause
它只是輸出的第一個字,不刪除第一個字。
我該如何刪除第一個單詞,並保留字符串的其餘部分?
當您在for
循環,其中變量是%%a
,一切都在第一空白字符的左邊使用"tokens=1,*"
使用默認的分隔符存儲在%%a
中,而其他所有內容都存儲在%%b
中。
第一個單詞後得到的一切,只需更改set updated=%%a
到set updated=%%b
@echo off
set /p text=text:
for /f "tokens=1,*" %%a in ("%text%") do set updated=%%b
echo %updated%
pause
你可以不用for循環太:
@Echo Off
Set/P "text=text: "
Set "updated=%text:* =%"
Echo(%updated%
Timeout -1
使用'%% B',而不是'%%了'。 – SomethingDark
@SomethingDark當我將%% a更改爲%%時,它給出相同的輸出b – djmrminer
編號只需更改:'set updated = %% b' – Aacini