Board logo

标题: [文本处理] 批处理怎么合并或者删除相邻两行特定内容? [打印本页]

作者: flycloud69    时间: 2019-3-8 17:21     标题: 批处理怎么合并或者删除相邻两行特定内容?

我一个文件夹里有些TXT文档里有以下内容
asdasd
(
asdasd
)
(
dddfdaf
)
czxczxc
asdasd
(
asdasd
)

我想把
(
)

这两行删除,内容变成
asdasd
(
asdasd

dddfdaf
)
czxczxc
asdasd
(
asdasd
)

应该怎么做啊?求大神帮忙,研究好久也没成功。。。好几个文件里都有这样的两行括号,寻找时候一不小心就漏掉几个,请大神帮帮忙
作者: yhcfsr    时间: 2019-3-8 17:56

将批处理放在txt目录中执行,直接修改源文件,请备份再执行
  1. @echo off
  2. powershell -Noprofile -Nologo -Command "dir *.txt -r |%%{([regex] '\)\r\n\(').Replace([io.file]::ReadAllText($_.FullName,[text.encoding]::Default),'')|sc $_.FullName}"
复制代码

作者: zaqmlp    时间: 2019-3-8 20:40

  1. @echo off
  2. title 代码可用,扫码头像,随意赞助;有什么问题,可加QQ956535081及时沟通
  3. cd /d "%~dp0"
  4. powershell "dir *.txt -r|%%{write-host $_.FullName;$t=[IO.File]::ReadAllText($_.FullName, [Text.Encoding]::Default);$t=$t -replace '\)\s*[\r\n]\s*\(','';[IO.File]::WriteAllText($_.FullName, $t, [Text.Encoding]::Default);}"
  5. pause
复制代码





欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2