! " for /f "tokens=*" %%i in ("%str%") do echo "☆%%i☆" pause goto :eof @echo off :: 去掉左空格 :: :: set ;更新日期:2025/1/9.幽灵资源网,磁力链接,云盘下载,BT种子,CPU天梯,显卡天梯,UU加速器,阅读3.0,英雄联盟,怪物猎人,无损音乐网,无损音乐下载网站,无损音乐免费下载,320Kmp3下载,无损音乐免费下载网站,音画欣赏,无损音乐,抖音神曲,发烧大碟,车载歌曲,试音天碟,WMA,WAV+CUE,WAV整轨,FLAC分轨,DSD黑胶,HI-FI试音,SACD-ISO,4K高清,高清电影下载,Magnet,Torrent,BitTorrent,迅雷快传,SUB,SRT,ASS/SSA,SUP,RARBG,TLF字幕,BluRay,x265,x264,DTS-HD,WEBRip,10BIT,HDR,DDP5.1,WEB-DL,1080p高清电影下载,中国高清网,高清电影,720p,1080p,MKV,AVI,蓝光原盘,3D高清,电影下载">
批处理 字符串去空格实现代码[不同部位]
脚本专栏 发布日期:2025/1/9 浏览次数:1
正在浏览:批处理 字符串去空格实现代码[不同部位]
复制代码 代码如下: @echo off :: 去掉左空格 :: :: set "str= ab c&>! " for /f "tokens=*" %%i in ("%str%") do echo "☆%%i☆" pause goto :eof
@echo off :: 去掉左空格 :: :: set "str= ab c&>! " :intercept if "%str:~0,1%"==" " set "str=%str:~1%"&goto intercept echo "☆%str%☆" pause goto :eof
@echo off :: 去掉右空格 :: :: set "str= ab c&>! " :intercept if "%str:~-1%"==" " set "str=%str:~0,-1%"&goto intercept echo "☆%str%☆" pause goto :eof
@echo off :: 去掉首尾空格空格 :: :: set "str= ab c&>! "
:intercept_left if "%str:~0,1%"==" " set "str=%str:~1%"&goto intercept_left
:intercept_right if "%str:~-1%"==" " set "str=%str:~0,-1%"&goto intercept_right echo "☆%str%☆" pause goto :eof
@echo off :: 去掉所有空格空格 :: :: set "str= ab c&>! " set "str=%str: =%" echo "☆%str%☆" pause goto :eof
set "var= My name is Redtek " rem 注:下面 Call 中的参数是无引号的,利用参数以逗号空格等做为分隔的特性 call :去左侧空格 %var% echo. && echo. call :去右侧空格 "%var%" rem 去字符串中的左、右空格 rem 为演示与另做它用的方便,下面步骤将重新编写去左右空格的代码段,可以独立使用。 echo. && echo. call :去两边空格 "%var%" %var% goto :eof
:去左侧空格
rem 利用替换原理,将变量 var 中 以 ^%1变量内容开头字串的左边一切替换为^1本身 rem 因为被 Call 过来以后,参数中的空格就全“丢了”(利用参数分隔的特性), rem 所以,自然那个要被定位的 ^%1 左边的空格也就全没了。