fireyecat 2022-05-16 12:44
浏览 6
已结题

在 vim 的 substitute 操作中,用什么符号表示end-of-line?

今天 macOS 终端里想用 vim 把文本文件里,以**结尾的一行下面加一个空白行。

首先,用了以下命令:
:%s/\*\*\n/\*\*\n\n/g
结果原本的换行,变成了^@^@。

接着尝试
:%s/\*\*\n/\*\*\r\r/g
达到了预期的效果。以**结尾的一行下面多了一个空白行。

接着又尝试
:%s/\*\*\r/\*\*\r\r/g
结果是:E486 Pattern not found:\*\*\r

这下让人更迷惑了,待替换的换行符要用 \n 表示;替换用的换行符用 \r 表示??
该文本文件的 fileformat=unix 。

  • 写回答

0条回答 默认 最新

    报告相同问题?

    问题事件

    • 系统已结题 5月24日
    • 修改了问题 5月16日
    • 修改了问题 5月16日
    • 创建了问题 5月16日