我正在尝试解决下面的问题,但却找不到有效的方法。
我有一个很大的文本文件,其中显示两行作为示例:
TEST ABCXYZ:1234 PNT = 543210
TEST ABCXYZ:1256 PNT = 543233
我希望最终
TEST ABCXYZ:1234
PNT = 543210
TEST ABCXYZ:1256
PNT = 543233
因此,我尝试过在 spaceP 上进行分隔,但总是将 P 带到下一行。我也尝试过宏,但不熟悉该方法。
答案1
假设逐行以下列内容结尾,例如PNT = 543210
您将执行以下步骤(快速而肮脏的解决方案,首先保存文件的副本):
- Ctrl+H
- 找什么:
(PNT = [0-9]{6}$)
- 用。。。来代替:
\r\n\r\n\1\r\n
- 搜索方式:正则表达式
- 点击Replace All(风险自负!)
结果是:
请注意 - MacOS 默认使用单个回车符 ( <CR>
),表示为\r
。Unix 使用单个换行符 ( <LF>
) \n
。Windows 两者同时使用,形成 ( <CRLF>
) 组合,\r\n
。
如果有必要,您必须根据您的操作系统和要求进行调整。
如果要删除 PNT 之前的空格,可以使用以下替代方法:
- 找什么:
(\ \ )(PNT = [0-9]{6}$)
- 用。。。来代替:
\r\n\r\n\2\r\n