我将定义的文本块(“PT”)移动到其上一行的末尾 ...时出现问题,例如,请考虑以下因素: -
100001,-6.0704
PT 100061,19.1127
100122,8.1831
PT
我需要这样: -
100001,-6.0704PT
100061,19.1127
100122,8.1831PT
我有一个像这样的大型不规则重复数据..并且需要实现这一点..(将“PT”移动到currentline-1“)
我有Notepad ++我需要以某种方式实现这一点..也许使用电子表格?在线工具?如何?宏?批处理文件?
答案 0 :(得分:0)
尝试这是第一次尝试
@echo off
setlocal enabledelayedexpansion
set prevline=
for /f "tokens=*" %%a in (a.txt) do (
if '%%a'=='PT' (
echo !prevline!PT
set prevline=
) else (
if not '!prevline!'=='' echo !prevline!
set prevline=%%a
)
)
这个批处理文件遍历a.txt文件的所有行,将每一行存储在变量prevline
中,如果碰巧找到'PT'字符串,它会吐出存储的行并连接PT,如果碰巧找不到PT字符串,它只会吐出存储的行并存储新行。
如需进一步说明,请参阅help for
和help set
。