Notepad++ Regex 帮助清理文件

Notepad++ Regex 帮助清理文件

我有一个超过 18000 行的 csv 文件(列分隔符为“<;>”,文本分隔符是双引号,行分隔符为“crlf”。

但是,文本分隔符中包含的许多数据确实包含“crlf”,这会在尝试导入或验证文件结构以及其他结构时产生问题。

"2"<;>"1305767"<;>"MSCUFH613249 [CRLF] 199PACKAGES"<;>""<;>"Y"[CRLF]

我尝试了以下帖子中的建议,但没有成功。

  1. 替换字符
  2. 替换回车符

我能够使用 Notepad++ 通过“查找\替换”删除回车符,并启用“环绕”和“扩展”选项。但是,这也会替换行尾的行分隔符。

我想用空格替换任何文本分隔符(“”)内的所有“\r\n”或 CRLF。

谢谢

答案1

这应该有帮助:

\n(?!")|\r(?!")|\r\n(?!")

答案2

您可以使用以下正则表达式搜索和替换:

  1. 在...[CRLF]内搜索并替换一个简单的空格:""

    寻找:"([^"]*)\r\n([^"]*)"

    代替:"$1 $2"

  2. <;>如果需要,可以使用适当的分隔符进行搜索和替换,例如,

    寻找:<;>

    代替:,


例子:

输入:

"2"<;>"1305767"<;>"MSCUFH613249 
 199PACKAGES"<;>""<;>"Y"

输出:

步骤 1 之后:

"2"<;>"1305767"<;>"MSCUFH613249   199PACKAGES<;>""<;>"Y"

步骤2之后:

"2","1305767","MSCUFH613249   199PACKAGES,"","Y"

相关内容