固定长度后删除换行符

Removing line breaks after fixed length

我有一个文本文件,每行有数千个 XML 字符串。但是,如果任何 XML 字符串超过 32767 个字符,则剩余文本将移至下一行。 我需要删除这样的换行符以确保每一行都有一个完整的 XML 字符串。

55个字符后换行的文件内容示例如下:

<?xml version="1.0" encoding=""?><Policy></Policy>
<?xml version="1.0" encoding=""?><Policy></Policy>
<?xml version="1.0" encoding=""?><Policy>111111111111<
/Policy>
<?xml version="1.0" encoding=""?><Policy></Policy>
<?xml version="1.0" encoding=""?><Policy>2222222222222
</Policy>
<?xml version="1.0" encoding=""?><Policy><A></A>333333
33333</Policy>

预计输出如下:

<?xml version="1.0" encoding=""?><Policy></Policy>
<?xml version="1.0" encoding=""?><Policy></Policy>
<?xml version="1.0" encoding=""?><Policy>111111111111</Policy>
<?xml version="1.0" encoding=""?><Policy></Policy>
<?xml version="1.0" encoding=""?><Policy>2222222222222</Policy>
<?xml version="1.0" encoding=""?><Policy><A></A>33333333333</Policy>

请建议如何在 Notepad++ 中完成此操作

  • Ctrl+H
  • 查找内容:\R(?!<\?xml)
  • 替换为:LEAVE EMPTY
  • 检查 匹配大小写
  • 检查 环绕
  • 检查 正则表达式
  • 全部替换

解释:

\R              # any kind of linebreak
(?!<\?xml)      # negative lookahead, make sure we haven't "<?xml" after

屏幕截图(之前):

截图(后):