如何替换 Atom 中的换行符?

How do I replace a newline in Atom?

在 Atom 中,如果我在搜索和替换工具上激活正则表达式模式,它可以找到换行符 \n,但是当我尝试替换它们时,它们仍然存在。

有没有办法在 Atom 中替换换行字符串?

看起来 Atom 将换行符匹配为 \r\n,但在仅将 \n 替换为任何内容时表现不一致。

所以换行符似乎匹配 \s+\r\n,并且只有 "half" 的行尾匹配 \n

  • 如果用字符串替换\n,行尾不会发生任何变化,但字符串会附加到下一行
  • 如果用字符串替换\r,什么也不会发生,但光标会前进。

纯粹主义者可能不喜欢我的解决方案,但您也可以通过复制带有多个换行符的内容并将其粘贴到 find/replace 输入中,将查找和替换输入转换为多行文本框。无论是否使用正则表达式,它都可以工作。

例如,您可以复制这 3 行并将它们粘贴到查找和替换输入中:

line 1
line 2
line 3

现在您的输入已达到您需要的行数,您可以根据需要修改它们(并在必要时添加正则表达式)。

您可以使用反向引用:

例如。用一个空行替换三个空行

查找正则表达式:(\r\n){3}

替换:$1

您可以用 (\r\n){2} 表示双空行 ... 或用 (\r\n){n} 表示任意数量的 n 空行。您可以省略 $1 并将替换留空以完全删除空行。

如果你想用两个替换 3 个空行,你的替换字符串可以是 $1$1 或 $1$2 (甚至 $1$3 ... $3$3 ... $3$2 ... ): $1 只是指第一轮括号表达式 \r\n; $2 与第二个(与第一个相同,因此 $1$1 的替换方式与 $1$2 相同,因为 $1 == $2)。这概括为 n 个空白行。

回答有点晚了,但我使用以下术语进行搜索,它适用于 Atom v1.19.7 x64

\r?\n|\r

BR

使用 ATOM 删除代码中不可见的换行符 (使用"Find in buffer"函数)

(- 使用 Atom-Editor 打开您的代码文件)

  • 按键盘上的 cmd(mac)/ctrl(win) + f 激活在缓冲区中查找功能(底部原子处出现一点 window-屏幕边缘)。

  • 标记您要删除不可见换行符的代码。

  • 单击标记模式按钮,然后单击正则表达式模式 (.*) 按钮并在第一个字段中键入:\n

  • 之后点击全部替换。

[并且 Atom 将删除所有由 \n 指示的不可见换行符(如果您使用 LF-Mode 右下角,对于 CRLF-Mode(在 windows machines 上很常见,因为默认)使用 \r\n) 替换它们。]

希望对您有所帮助。

合气道

None 这些答案对我有帮助。 什么对我有用:

  1. 我刚刚在文件末尾添加了一个新行。
  2. Shift + <-(向左箭头)
  3. Ctrl + C
  4. 在“在当前缓冲区中替换”行中按 Ctrl + V

刚刚复制新行并将其粘贴到 :D

先决条件:激活'Use Regexp'

在我的 atom 版本 (linux, 1.51.0) 中,我使用以下代码在新行

之后添加 'export '
search '\n'
replace '\nexport '

工作得很好

\r\n 没有匹配到任何内容

呵呵,很奇怪,Ctrl+Shift+F也不行!

解决方法:打开 Atom 设置,然后打开核心包->line-ending-selector,滚动到底部以查看有关命令转换行尾的提示:'convert-to-LF'.

要转换:Cmd+Shift+P 输入 'line' 并选择 'convert-to-LF' - 完成!

您可以将默认选项 'Default line ending' 从 'OS' 更改为 'LF'。

此外,设置更改后,您的新文件将使用 'LF'。