Notepad++ 将 2 行合并为 1 行

Posted

技术标签:

【中文标题】Notepad++ 将 2 行合并为 1 行【英文标题】:Notepad++ Merge 2 lines into 1 line 【发布时间】:2012-06-20 11:54:06 【问题描述】:

我有以下文字;

国家=法国 名称=牛仔 国家=德国 姓名=迈克尔 国家=英格兰 姓名=杰克

我希望它看起来像;

国家=法国名字=jean 国家=德国名字=迈克尔 国家/地区=英格兰名称=杰克

如何在 Notepad++ 中执行此操作?

【问题讨论】:

【参考方案1】:

想补充一下,以防对类似情况有所帮助: 当上一行数字和第二个文本时替换文件中的行

1
text
2
text

基于Filipe Fedalto 答案正则表达式将是:

find:(\d+)\r\n
replace:(\1)

【讨论】:

这是如何回答问题的? 它对主题问题的直接回答:“Notepad++ Merge 2 lines into 1 line”我找不到需要的信息并找到了类似的问题,所以我的回答可以在类似的情况下有所帮助,有什么问题吗? 这没有回答具体问题,也不是通用答案。 那么,没有类似的吗?【参考方案2】:

从菜单中选择 Edit → Line Operations → Join Lines 或

选择行并按 Ctrl + J --> 最简单的选项 :)

【讨论】:

在小型结构上,手动方法通常比精心设计(程序化)的方法更快、更有效。特别是因为这些结构通常具有一些通常会偏离打算涵盖它的规则的价值。有机会忽略价值观会增加意义。然而,对于大多数程序员来说,程序化的解决方案[可悲地]更有吸引力,即使变成用大炮杀死蚊子的情况,也会被使用。 而且 CTRL-J 非常像 vim "J" 命令。很好,您甚至不必选择整行,只需选择部分即可。 这怎么比按END 然后按DELETE 快?你可以通过反复按ENDDELDOWN 进入节奏。对于@ljgww 的观点,使用Join Lines 或使用这种方式杀死大量蚊子需要数周时间,这就是程序员更喜欢大炮的原因,因为我们经常一次处理数千行代码。跨度> 【参考方案3】:

    打开“搜索>替换”对话框

    在“查找内容”字段中放置不带引号的字符串“(country=\w*)\r\n(name=\w*)”。

    在“替换为”字段中放置字符串“(\1) (\2)”,同样不带引号。

    标记“正则表达式”搜索模式。

    按“查找下一个”进行测试。

    如果选择以 country=XX 和 name=YY 开头的 2 行,则按“全部替换”。

如果您不使用 Windows,则只能使用 \n 或 \r,具体取决于您使用的是 linux/unix 还是 mac。

Notepad++ Uses Posix Regular 表达式。您可以参考任何标准 Posix Regex 参考,例如 this one 或 this one。

【讨论】:

【参考方案4】:

使用扩展替换功能,将“\r\nname”替换为“name”

根据文件为 \r\n 替换适当的行结束字符。

如果是windows,使用\r\n

如果是unix,使用\n

如果是mac,使用\r

【讨论】:

@Sarah Meadow 你也可以看到superuser.com/questions/411193/…

以上是关于Notepad++ 将 2 行合并为 1 行的主要内容,如果未能解决你的问题,请参考以下文章

notepad 如何将【001】替换成 第001章 ?

将 2 行合并为 1 行

Notepad++ 将打开文档中的两行替换为其他 (10) 行

notepad++使用技巧

请问notepad++如何将换行替换成其它符号?

如何通过逗号分隔将 2 行合并为一行?