Windows批处理 - 从字符串中删除第一个字
问题描述:
我试图从批处理中删除字符串中的第一个字。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