如文本1.txt:
代码:
0000acb0h
0b0c00a000s
0000h00ga00
a0000000
通过批处理将文本所有字符串字符a前的0去除输出如下:
代码:
acb0h
bca000s
hga00
a0000000
要求:代码简洁、高效、通用,不生成临时文件
pusofalse:
复制代码 代码如下:
@echo off
for /f "delims=" %%. in (1.txt) do (
set "str=%%."
call,set "str=%%str:*a=%%"
for /f "delims=a" %%{ in ("%%.") do (
set "var=%%{"
call,echo.%%var:0=%%a%%str%%
))
pause>nul
batman:
复制代码 代码如下:
@echo off
for /f "tokens=1,2 delims=a" %%i in (1.txt) do (
if "%%j" neq "" (
set "str=%%i"
call,set "str=%%str:0=%%"
call,echo %%str%%a%%j
) else (
echo a%%i
)
)
pause>nul
批处理之所以如此得到大家的青睐,是因为它可以现写现用很方便,
同时从一另一层面上就要求我们具体问题具体对待,相信谁也不会
回为要解决一个普通的问题而写出一个适合出所有此类问题的代码
吧,如真要这样做,在时间上的损耗将是一笔无可估量的损失,我
们也会因此而得不偿失。
代码:
0000acb0h
0b0c00a000s
0000h00ga00
a0000000
通过批处理将文本所有字符串字符a前的0去除输出如下:
代码:
acb0h
bca000s
hga00
a0000000
要求:代码简洁、高效、通用,不生成临时文件
pusofalse:
复制代码 代码如下:
@echo off
for /f "delims=" %%. in (1.txt) do (
set "str=%%."
call,set "str=%%str:*a=%%"
for /f "delims=a" %%{ in ("%%.") do (
set "var=%%{"
call,echo.%%var:0=%%a%%str%%
))
pause>nul
batman:
复制代码 代码如下:
@echo off
for /f "tokens=1,2 delims=a" %%i in (1.txt) do (
if "%%j" neq "" (
set "str=%%i"
call,set "str=%%str:0=%%"
call,echo %%str%%a%%j
) else (
echo a%%i
)
)
pause>nul
批处理之所以如此得到大家的青睐,是因为它可以现写现用很方便,
同时从一另一层面上就要求我们具体问题具体对待,相信谁也不会
回为要解决一个普通的问题而写出一个适合出所有此类问题的代码
吧,如真要这样做,在时间上的损耗将是一笔无可估量的损失,我
们也会因此而得不偿失。