文本最末列数值乘一个数的批处理实现
作者 佚名
来源 批处理
浏览
发布时间 2013-07-09
方法二:(用时0.02~0.05秒) 复制代码 代码如下: @echo off&setlocal enabledelayedexpansion for /f "delims=" %%i in (LastNumberChange.txt) do set/a n+=1&set LastLine=$%%i$ for /f "delims=" %%i in (LastNumberChange.txt) do ( set/a m+=1 if %n% neq !m! call set "all=!all!%%i&echo." ) :LastOne set/a x+=1 call set LastOne=%%LastLine:~-!x!,1%% set /a Mult=%LastOne%*1 if not "%Mult%"=="%LastOne%" goto :LastOne set/a x-=1 call set Front=%%LastLine:~,-%x%%% call set Last=%%LastLine:~-%x%%% :Middle set/a x1+=1 call set LastOne1=%%Front:~-!x1!%% set /a Mult1=%LastOne1%*1 if "%Mult1%"=="%LastOne1%" goto :Middle set/a Middle=%LastOne1:~1%*7 set/a x1-=1 call set Front=%%Front:~,-%x1%%% set "Sum=%all%%Front%%Middle%%Last%" echo %Sum:$=% pause batman: 复制代码 代码如下: @echo off for /f "delims=" %%i in (1.txt) do ( set "str=%%i"&set "begin=a" setlocal enabledelayedexpansion call :lp echo !str!!a!!var!!last! endlocal ) pause>nul&goto :eof :lp set "a=%str:~-1%"&set "str=%str:~,-1%" if "%a%" geq "0" ( if "%a%" leq "9" set "flag=a"&set "begin=" ) if defined flag ( set var=%a%!var!&set "flag=" ) else ( if defined begin ( set last=%a%!last! ) else ( set /a var*=7&goto :eof ) ) goto lp 随风: 复制代码 代码如下: @echo off&setlocal EnableDelayedExpansion for /l %%a in (0 1 9) do set .%%a=%%a for /f "delims=" %%a in (a.txt) do ( set flag=&set num=&set sun=&set "str=%%a" call :loop ) pause :loop set "var=!str:~-1!" if defined .!var! (set num=!var!!num!&set flag=a) else (set sun=!var!!sun!&set flag=) if not defined num set str=!str:~0,-1!&goto loop if defined flag set str=!str:~0,-1!&goto loop set /a num*=7 echo !str!!num!!sun:~1! goto:eof |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |
你可能对下面的文章感兴趣
上一篇: 批处理自动登录QQ小结及相关讨论下一篇: 处理判断字符串长度的代码
关于文本最末列数值乘一个数的批处理实现的所有评论