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

[文本处理] 批处理如何替换指定字段?

寒假作业题  下面有账号落干
账号1----dfadg
账号2----fs**sd
账号3----dfawsd
要求密码全部为123456,应该怎么做呢?
1

评分人数

    • pcl_test: 勿发笼统无意义的标题PB -2

回复 1# 279874107
  1. @echo off
  2. (for /f "delims=-" %%a in ('type 66.txt') do (
  3. echo %%a----123456
  4. ))>new.txt
复制代码
#&cls&@powershell "Invoke-Expression ([Io.File]::ReadAllText('%~0',[Text.Encoding]::UTF8))" &pause&exit

TOP

  1. """
  2. 如何替换指定字段.py
  3. http://bbs.bathome.net/thread-39434-1-1.html
  4. 2016年2月20日 14:51:20 codegay
  5. """
  6. with open("a.txt","r+") as f:
  7.     txt=[r.rstrip("\n").split("-")[0]+"---123\n" for r in f.readlines()]
  8.     print(txt)
  9.     f.seek(0)
  10.     f.truncate()
  11.     [f.write(r) for r in txt]
  12.     print(txt)
复制代码
去学去写去用才有进步。安装python3代码存为xx.py 双击运行或右键用IDLE打开按F5运行

TOP

  1. #方法2 正则表达式
  2. #2016年2月20日 15:50:15
  3. import re
  4. with open("b.txt","r+") as f:
  5.     txt=re.sub(r"(.+?)---.+",r"\1---1234",f.read())
  6.     print(txt)
  7.     f.seek(0)
  8.     f.truncate()
  9.     f.write(txt)
复制代码
去学去写去用才有进步。安装python3代码存为xx.py 双击运行或右键用IDLE打开按F5运行

TOP

本帖最后由 ivor 于 2016-2-20 18:53 编辑
  1. # python 3.5.1
  2. # coding:utf-8
  3. # by:ivor  bathome.net
  4. # re.sub替换示例,请把被替换的文件拖到本程序运行
  5. import re, sys
  6. if len(sys.argv) > 1:
  7.     rFile = sys.argv[1]
  8. else:
  9.     exit(1)
  10. with open(rFile, "r") as file:
  11.     wFile = open("new.txt", "w")
  12.     for line in file:
  13.         reg = re.compile(r"[a-zA-Z](.*?)$")
  14.         line = re.sub(reg,"123456",line)
  15.         wFile.write(line)
  16.     wFile.close()
  17. print("结果保存在new.txt")
  18. input("")
复制代码
1

评分人数

#&cls&@powershell "Invoke-Expression ([Io.File]::ReadAllText('%~0',[Text.Encoding]::UTF8))" &pause&exit

TOP

楼上的真会玩
  1. sed -i "s/----.*$/----123456/g" test.txt
复制代码
racket对中文的支持不完善,还是练习js吧
  1. //&cls&cscript -nologo -e:jscript "%~f0" >New.txt&exit
  2. WSH.Echo(new ActiveXObject('Scripting.FileSystemObject').OpenTextFile('test.txt', 1).ReadAll().replace(/----.*/g,'----123456'));
复制代码
1

评分人数

TOP

返回列表