2017-02-24 144 views
1

我試圖從批處理中刪除字符串中的第一個字。Windows批處理 - 從字符串中刪除第一個字

例:「這小子愛批」到「孩子愛批」

我曾嘗試:

@echo off 
set /p text=text: 
for /f "tokens=1,*" %%a in ("%text%") do set updated=%%a 
echo %updated% 
pause 

它只是輸出的第一個字,不刪除第一個字。

我該如何刪除第一個單詞,並保留字符串的其餘部分?

+3

使用'%% B',而不是'%%了'。 – SomethingDark

+0

@SomethingDark當我將%% a更改爲%%時,它給出相同的輸出b – djmrminer

+3

編號只需更改:'set updated = %% b' – Aacini

回答

2

當您在for循環,其中變量是%%a,一切都在第一空白字符的左邊使用"tokens=1,*"使用默認的分隔符存儲在%%a中,而其他所有內容都存儲在%%b中。

第一個單詞後得到的一切,只需更改set updated=%%aset updated=%%b

@echo off 
set /p text=text: 
for /f "tokens=1,*" %%a in ("%text%") do set updated=%%b 
echo %updated% 
pause 
3

你可以不用for循環太:

@Echo Off 
Set/P "text=text: " 
Set "updated=%text:* =%" 
Echo(%updated% 
Timeout -1 
相關問題