如何仅替换文本文件中的特定换行符?

时间:2015-03-30 15:48:06

标签: regex file text notepad++ newline

我有一个看起来像这样的文本文件:

#EXTINF:0,ABC family USA 
abc.com

#EXTINF:0,ABC HD USA
abc.com/usa

#EXTINF:0,AMC USA
amc.com/usa

#EXTINF:0,BLOMBERG USA 
 blomberg.com/usa

但是我希望将标题和链接替换为如下所示:

#EXTINF:0,ABC family USA[]abc.com 

#EXTINF:0,ABC HD USA[]abc.com/usa

这样我就可以轻松使用此文件并将内容转换为数组。 但是,我不希望每个新行都包含两个括号。我只希望将标题和链接组合在一起并在它们之间有一个括号。我不知道如何通过记事本++实现这一目标?

感谢您的帮助!

1 个答案:

答案 0 :(得分:1)

如果您的文本文件完全一致(只包含上面原始摘录中的行,没有尾随空格),您可以使用此正则表达式查找发生在octothorpes之后的换行符:

\n(?!(^[#\s]))

并替换为:

[]

结果如下:

#EXTINF:0,ABC family USA[]abc.com

#EXTINF:0,ABC HD USA[]abc.com/usa

#EXTINF:0,AMC USA[]amc.com/usa

#EXTINF:0,BLOMBERG USA[]blomberg.com/usa

在Sublime Text 3中测试 - ST和NP ++都使用Perl Regex,但有一些细微的变化,所以这可能不适合你。

如果它在NP ++中不起作用,您可以获取ST3 here的副本。