从不以以下开头的行中删除换行符

Remove line breaks from lines that don't start with

我想删除除以“>”字符开头的行之后的所有换行符。我试过 ^(?!>)(?<=.*)\n 但结果 returns 0。我在 NotePad++ 中使用它。我在一些大型蛋白质序列文件中有成千上万的换行符,我希望蛋白质序列在其 >Information_line.

之后位于一行中

输入:

>ref|XP_008| angi [enzyme1]  
MSGSSWLILSLVV  
VTAAQSTPEEQVKTFLDKFNQE  
AEDLYHQSSLAAWNYNTNI  
TEENSQQMNDAGEIWS  
AFYNEQSKIA

预期结果:

>ref|XP_008| angi [enzyme1] MSGSSWLILSLVVVTAAQSTPEEQVKTFLDKFNQEAEDLYHQSSLAAWNYNTNITEENSQQMNDAGEIWSAFYNEQSKIA

您可以尝试这样的操作:^(?!>)(?<=.*)\n。 正则表达式表示在一行开头之后不应该有 '>' 字符,然后可以有任何未捕获的字符,然后我们捕获换行符。

  • Ctrl+H
  • 查找内容:\R(?!>)
  • 替换为:LEAVE EMPTY
  • 检查 环绕
  • 检查 正则表达式
  • 全部替换

解释:

\R          # any kind of linebreak (i.e. \r, \n, \r\n)
(?!>)       # negative lookahead, make we haven't ">" after

屏幕截图(之前):

截图(之后):