连接行直到到达“终止”字符串

连接行直到到达“终止”字符串

在文件中,我有如下数据:

123
456
789
---
101112
131415
161718
192021
------
222223242526
27282930313233
-----------------------

我需要将这些行改为如下所示:

123 456 789 ---
101112 131415 161718 192021 ------
222223242526 27282930313233 -----------------------

即,直到特定的字符串(连字符序列)为止,各行都将被合并。

我尝试了很多方法,但都没有效果。

我的实际文件中大约有 15000 行。

答案1

这是一种完成这项工作的方法,它将用空格替换所有前面没有破折号的换行符:

  • Ctrl+H
  • 找什么:(?<!-)\R
  • 用。。。来代替:A SPACE
  • 检查环绕
  • 检查正则表达式
  • Replace all

解释:

(?<!-)  : negative lookbehind, make sure we don't have a dash before
\R      : any kind of linebreak

给定示例的结果:

123 456 789 ---
101112 131415 161718 192021 ------
222223242526 27282930313233 -----------------------

相关内容