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

[文本处理] 【已解决】江湖求救。替换txt文件内容

本帖最后由 luogu 于 2020-2-27 22:12 编辑

txt文件内容如下
深圳市南山区南头街道马家龙社区南山大道
深圳市南山区沙河街道明珠街社区
深圳市宝安区西乡街道共乐社区共和工业路
深圳市龙岗区龙城街道吉祥社区彩云路
深圳市福田区福田街道福安社区民田
深圳市福田区福田街道福安社区民田路


深圳市南山区  替换成   南山区,
深圳市宝安区  替换成   宝安区,
深圳市福田区  替换成   福田区,
深圳市龙岗区  替换成   龙岗区,
...
并保存文件。


【已解决】
谢谢,xczxczxcz
谢谢,went
谢谢,zaqmlp
在古代,你们就是大侠。感谢。嘴一个

谢谢,xczxczxcz
谢谢,went
谢谢,zaqmlp
在古代,你们就是大侠。感谢。嘴一个

TOP

  1. @echo off
  2. setlocal enabledelayedexpansion
  3. >>result.txt (for /f %%a in (test.txt) do (set "sour=%%a"
  4. if "深圳市" equ "!sour:~0,3!" (echo !sour:~3!) else (
  5. echo !sour!)))
  6. pause
复制代码

TOP

打开编辑器如图操作。
QQ: 己阵亡
脚本优先 [PowerShell win10]

TOP

本帖最后由 went 于 2020-2-27 20:38 编辑
  1. @echo off
  2. ( for /f "tokens=1,2* delims=市区" %%i in (0.txt) do echo %%j区,%%k ) > newText.txt
  3. pause
复制代码
0.txt是源文件,newText是新文件,ANSI保存

TOP

win7 以上, 若是XP要写纯bat, 比较啰嗦。xp写成exe好些。
win7 以上。 只处理单个文件。
  1. @echo off  & cd /d "%~dp0"
  2. powershell -c "(gc '.\0.txt') -replace '(^.+?市)(.+?区)(.*$)','$2,$3'|sc '.\new.log'";
  3. pause
复制代码
QQ: 己阵亡
脚本优先 [PowerShell win10]

TOP

回复 11# xczxczxcz


    江湖救急,请大侠帮忙,

TOP

不就是一句话的问题吗?
QQ: 己阵亡
脚本优先 [PowerShell win10]

TOP

回复 9# red2020


    如何联系呢?

TOP

回复 7# luogu
提供的免费脚本只提供初级替换功能,如需深度定制的脚本需要收取一定的开发费用。

TOP

  1. <# :
  2. cls
  3. @echo off
  4. set info=互助互利,支付宝扫码头像,感谢赞助
  5. rem 有问题,可加QQ956535081及时沟通
  6. title %info%
  7. set "rootpath=%~dp0"
  8. if "%rootpath:~-1%" equ "\" (set "rootpath=%rootpath:~,-1%")
  9. cd /d "%rootpath%"
  10. powershell -NoProfile -ExecutionPolicy bypass "Invoke-Command -ScriptBlock ([ScriptBlock]::Create([IO.File]::ReadAllText('%~f0',[Text.Encoding]::Default))) -Args '%rootpath%'"
  11. echo;%info%
  12. pause
  13. exit
  14. #>
  15. $txtfile='.\xx.txt';
  16. $list='
  17. 深圳市南山区|南山区,
  18. 深圳市宝安区|宝安区,
  19. 深圳市福田区|福田区,
  20. 深圳市龙岗区|龙岗区,
  21. ';
  22. $txtfile=$txtfile -replace '^\.',$args[0];
  23. $arr=$list.trim() -split '[\r\n]+';
  24. $enc=[Text.Encoding]::Default;
  25. $text=[IO.File]::ReadAllText($txtfile,$enc);
  26. for($j=0;$j -lt $arr.length;$j++){
  27.     $brr=$arr[$j].split('|',2);
  28.     $text=$text.replace($brr[0],$brr[1]);
  29. };
  30. [IO.File]::WriteAllText($txtfile, $text, $enc);
复制代码
提供bat代写,为你省时省力省事,支付宝扫码头像支付
微信: unique2random

TOP

回复 6# red2020


    谢谢你,
   我不能一次替换完

set "深圳市坪山区=坪山区,"
set "深圳市罗湖区=罗湖区,"
set "深圳市南山区=南山区,"
set "深圳市福田区=福田区,"
set "深圳市光明区=光明区,"
set "深圳市龙岗区=龙岗区,"
set "深圳市宝安区=宝安区,"
set "深圳市坪山区=坪山区,"
set "深圳市大鹏新区=大鹏新区,"
set "深圳市龙华区=龙华区,"
set "深圳市前海深港合作区=前海深港合作区,"
set "深圳市深汕特别合作区=深汕特别合作区,"
set "深圳市盐田区=盐田区,"

能不能这样的,一个bat文件,运行下,就OK了。

TOP

回复 1# luogu

一个例子,你自己多替换几次就是结果了
  1. @echo off
  2. certutil -decode "%~f0" th.exe
  3. rem 定义要替换的新旧字符串
  4. set strOld=深圳市南山区
  5. set strNew=南山区,
  6. th.exe %strOld% %strNew% "你的文件.txt"   "输出文件.txt"
  7. pause
  8. exit/b
  9. -----BEGIN BASE64-----
  10. TVqQAAMAAAAEAAAA//8AALgAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
  11. AAAAAAAAAAAAAAAAgAAAAA4fug4AtAnNIbgBTM0hVGhpcyBwcm9ncmFtIGNhbm5v
  12. dCBiZSBydW4gaW4gRE9TIG1vZGUuDQ0KJAAAAAAAAABQRQAATAECAAAAAAAAAAAA
  13. AAAAAOAADwMLAQYAAAAAAAAAAAAAAAAAwBEAAAAQAAAAIAAAAABAAAAQAAAAAgAA
  14. BAAAAAAAAAAEAAAAAAAAAAAwIAAAAgAA3WMAAAMAAAAAABAAABAAAAAAEAAAEAAA
  15. AAAAABAAAAAAAAAAAAAAACAgAAAoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
  16. AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
  17. AAAAAAAAAABIIAAARAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC50ZXh0AAAA
  18. kAMAAAAQAAAABAAAAAIAAAAAAAAAAAAAAAAAACAAAGAuZGF0YQAAAKABIAAAIAAA
  19. AAIAAAAGAAAAAAAAAAAAAAAAAABAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
  20. AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABVieWB7CQAAACQi0UMg8AE
  21. iwiJTfyLRQyDwAiLCIlN+ItF/FDo5wIAAIPEBIlF9ItF+FDo2AIAAIPEBIlF8ItF
  22. DIPADLkAIEAAUYsIUejGAgAAg8QIiUXsuAIAAABQuAAAAABQi0XsUOizAgAAg8QM
  23. i0XsUOivAgAAg8QEiUXouAAAAABQuAAAAABQi0XsUOiMAgAAg8QMi0XsULgAABAA
  24. ULgBAAAAULigIUAAUOh+AgAAg8QQi0XsUOh6AgAAg8QEuAAAAACJReS4AAAAAIlF
  25. 4ItF5ItN6DnID42OAAAAuKAhQACLTeQByItN9FGLTfxRUOhJAgAAg8QMhcAPhAUA
  26. AADpNgAAALigIVAAi03gAciLTfBRi034UVDoKQIAAIPEDItF5ItN9AHIiUXki0Xg
  27. i03wAciJReDpKwAAALigIVAAi03gAci5oCFAAItV5AHRD74RiBCLReSJwUCJReSL
  28. ReCJwUCJReDpZP///4tFDIPAELkDIEAAUYsIUeiXAQAAg8QIiUXci0XcUItF4FC4
  29. AQAAAFC4oCFQAFDosAEAAIPEEItF3FDojAEAAIPEBLgAAAAA6QAAAADJwwAAAAAA
  30. VYnlgewsAAAAkI1F6FDo/gAAAIPEBLgAAAAAiUXUuAAAAwBQuAAAAQBQ6GkBAACD
  31. xAi4AQAAAFDoYwEAAIPEBI1F1FC4AAAAAFCNRdxQjUXgUI1F5FDoTQEAAIPEFItF
  32. 3FCLReBQi0XkUOjR/f//g8QMiUXYi0XYUOgyAQAAg8QEycMAAAAAAAAAAAAAAAAA
  33. AAAAAAAAAAAAAAAAAAAAAIcsJFWNbCQEUYnpgekAEAAAhQEtABAAAD0AEAAAfewp
  34. wYUBieCJzIsI/2AEi0Xsw+j3////iwCLAMPo7f///1Do6////1DozQAAAIHECAAA
  35. AMOLZejo1v///1DowAAAAP////+aEkAAshJAAOm3AAAAVYtsJAiNRCQMiUUAMcCJ
  36. RQRkoQAAAACJRQi4zBJAAIlFDLjAEkAAiUUQMcCJRRSNRQhkowAAAABdwwAAAAAA
  37. /yVIIEAAAAD/JUwgQAAAAP8lUCBAAAAA/yVUIEAAAAD/JVggQAAAAP8lXCBAAAAA
  38. /yVgIEAAAAD/JWQgQAAAAP8laCBAAAAA/yVsIEAAAAD/JXAgQAAAAP8ldCBAAAAA
  39. /yV4IEAAAAD/JXwgQAAAAP8lgCBAAAAA/yWEIEAAAAAAAAAAAAAAAAAAAAAAAAAA
  40. AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
  41. AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
  42. cmIAd2IAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACMIAAAAAAAAAAAAADQIAAA
  43. SCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA2yAAAOQgAADsIAAA9CAAAPwgAAAEIQAA
  44. DSEAABchAAAhIQAAKiEAADchAABIIQAAWCEAAF8hAABtIQAAdSEAAAAAAADbIAAA
  45. 5CAAAOwgAAD0IAAA/CAAAAQhAAANIQAAFyEAACEhAAAqIQAANyEAAEghAABYIQAA
  46. XyEAAG0hAAB1IQAAAAAAAG1zdmNydC5kbGwAAABzdHJsZW4AAABmb3BlbgAAAGZz
  47. ZWVrAAAAZnRlbGwAAABmcmVhZAAAAGZjbG9zZQAAAHN0cm5jbXAAAABzdHJuY3B5
  48. AAAAZndyaXRlAAAAX2NvbnRyb2xmcAAAAF9fc2V0X2FwcF90eXBlAAAAX19nZXRt
  49. YWluYXJncwAAAGV4aXQAAABfWGNwdEZpbHRlcgAAAF9leGl0AAAAX2V4Y2VwdF9o
  50. YW5kbGVyMwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
  51. AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
  52. AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
  53. -----END BASE64-----
复制代码

TOP

回复 4# zaqmlp


    一行字里,有好多“区”,所以,是把  深圳市罗湖区  替换成  罗湖区,
    这样的。

TOP

回复 3# luogu

删除开头的深圳市,第一个区字后面插入逗号,这样?
提供bat代写,为你省时省力省事,支付宝扫码头像支付
微信: unique2random

TOP

返回列表