[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
写了个删除前缀的(后缀亦然),效率不怎么高:
  1. @echo off&setlocal enabledelayedexpansion
  2. set /p str=<1.txt
  3. :lp
  4. for /f "delims=" %%i in ('findstr "%var%%str:~,1%" 1.txt') do set /a n+=1
  5. if not defined num set "num=%n%"
  6. if "%n%" equ "%num%" (
  7.    set "var=%var%%str:~,1%"&set "str=%str:~1%"
  8.    set "n=0"&goto lp
  9. )
  10. for /f "delims=" %%i in (1.txt) do (
  11.     set "str=%%i"
  12.     echo !str:%var%=!
  13. )
  14. pause>nul
复制代码
***共同提高***

TOP

思维定向了,一直想先把前缀提出来,pusofalse版主的代码证明了并不要提出来。
***共同提高***

TOP

我觉得楼主的意思还是表明清楚了,这个每行的前缀和后缀也是能通过程度自动判断出来
的,但用纯批处理来完成这样一个过程必定存在效率问题,因为用批肯定是要进行逐字符
判断的,当遇到大型的文本时,这样的处理将会慢得不可形容。所以,这样的题目其实际
价值并不会太大。。。
***共同提高***

TOP

原帖由 namejm 于 2008-10-18 12:43 发表
  楼主的意思并没有表明清楚,因为楼主并没有说清楚什么样的字符串才算前缀,什么样的字符串才算后缀,既然前缀后缀的含义都没有交代清楚,又怎么能让程序判断哪些是前缀哪些是后缀呢——楼主已经注明了,219和17仅 ...

我理解的就是,文本每行前面和后面都包含有的字符串就是前缀和后缀。
***共同提高***

TOP

返回列表