Notepad++ 加入行不以 | 开头字符与上一行

Notepad++ join line not starting with | character with the previous line

我需要导入一个包含近 50 列和数千行的大文件,其结构为 |field|;|field|;|field|... 每个字段都以 | 开始和结束(管道)和; (分号)分隔字段

问题是一些数据在中间有“进入”并且正在“破坏”这些线

|123|;|ABC|;|文字

正文正文|

|124|;|ABB|;|正文

文字 |

|125|;|BDD|;|文本文本文本|

|126|;|ABC|;|文字文字

文字

正文|

|127|;|ABC|;|文字文字文字|

如果该行不是以 | 开头,我需要(管道)删除前面的“输入”,这样行就不会中断

预期的结果是

|123|;|ABC|;|文字文字文字|

|124|;|ABB|;|正文正文|

|125|;|BDD|;|文本文本文本|

|126|;|ABC|;|文字文字文字文字|

|127|;|ABC|;|文字文字文字|

我已经尝试了其他问题的几个建议,但到目前为止没有成功。这个我没用过

您可以使用匹配 0+ 水平白色space 字符、换行符和 0+ 白色space 字符使用 \h*\R\s*.

然后使用 ([^\s|])

组 1 中捕获除白色 space 字符或管道之外的任何字符

在替换中,使用space和第1组。

查找内容:

\h*\R\s*([^\s|])

替换为:

Regex demo