开发者

How do I search for "\n" without a preceding "\r" in vim?

Vim won't convert fileformat if it sees inconsistent line endi开发者_运维知识库ngs. How can I find those ?


Zero-width look-behind assertion

"How do I search for “\n” without a preceding “\r” in vim ?"

/\r\@<!\n

How do you search and replace these occurances with "\r\n"?

:%s/\r\@<!\n/\r\n/gc

Get rid of the final "c" if you want to accept every match without confirmation.

Edit: However, if you want an answer that you can remember how to do without having used look ahead/behind assertions a billion times, see Jackson Miller's answer. Sometimes it is better to simplify your problem and use tools that don't require you to read the manual constantly :)


How about replacing \r\n with \n and then \n with \r\n.

Should be something like:

  :%s/\r\n/\n
  :%s/\n/\r\n


To change all line endings that are \r\n to \n, use

:%s/\r$//

This will search for all \r characters followed by newline and replace it with just newline


Use a utility like dos2unix or unix2dos to convert the line endings to the desired format. There are native implementations of these utilities for both unix and windows systems.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜