[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文本处理] 批处理查找含有特定字符的行并替换

如A.TXT中某行有A字符则整行替换为B

在某处看到这个问题,懒的回答他,觉得题目虽然简单,但有点意识。
考考大家,看谁的代码最简洁,高效。
反正无聊,大家热闹热闹吧!

技术问题请到论坛发帖求助!

这个不是在中国批处理论坛见过的吗?
那个叫1234567的人是不是版主

TOP

  1. 精简
  2. 通过
  3. 但是我又一字符串    哈哈fjkigjlkglkdf[novaa]我我你你他她
  4. 该如何去除除[novaa]
  5. 除了用 %var:[novaa]=%
  6. 还有个疑问
  7. 可以用[*]的形式不? (我测试发现好像不行)
复制代码

[ 本帖最后由 novaa 于 2007-11-20 08:09 编辑 ]
ㄗs:A good programming is 99% sweat and 1% coffee!--①個亾

============ >   hi.baidu.com/novaa   <============

TOP

:
  1. @echo off
  2. setlocal EnableDelayedExpansion
  3. for /f "delims=" %%a in (a.txt) do (
  4.    set var=%%a
  5.    set num=!var:a=!
  6.    if not "!num!"=="!var!" (echo b) else echo %%a
  7. )
  8. pause
复制代码
技术问题请到论坛发帖求助!

TOP

o(∩_∩)o...
不过这个P有个BUG
会在最后一行显示一个方框状的黑长方形
不知道是为什么?
ㄗs:A good programming is 99% sweat and 1% coffee!--①個亾

============ >   hi.baidu.com/novaa   <============

TOP

厉害,
只怕是你会的命令都用上了。。。。
呵呵,开个玩笑,刚学能解决问题已经很不错了。继续努力。
个人认为,代码最好不要产生临时文件,万不得以时,也要尽量少产生。
慢慢完善吧。
技术问题请到论坛发帖求助!

TOP

随风看完我的帖子后帮我解答下子我提的问题啊 呵呵
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. set num=0
  4. for /f "delims=" %%a in (A.txt) do (
  5. set /a num+=1
  6. set var!num!=%%a
  7. echo %%a>!num!.txt
  8. )
  9. for /l %%a in (1 1 !num!) do (
  10. findstr /v /c:"A" %%a.txt >>11%%a.txt || echo B>>11%%a.txt
  11. )
  12. cd.>A.txt
  13. copy 11*.txt A.txt
  14. for /l %%a in (1 1 !num!) do (
  15. del %%a.txt 11%%a.txt
  16. )
  17. pause>nul
复制代码
ㄗs:A good programming is 99% sweat and 1% coffee!--①個亾

============ >   hi.baidu.com/novaa   <============

TOP

文本没有特殊字符
技术问题请到论坛发帖求助!

TOP

大家发下代码吧
我写的那么一大串就不发了
这个话题是比较有意义的
ㄗs:A good programming is 99% sweat and 1% coffee!--①個亾

============ >   hi.baidu.com/novaa   <============

TOP

你的要求简洁具体是什么意思?
是不是只完成 主体功能,象一些特殊字符就不考虑?

TOP

返回列表