替换Vim中的项目而不替换旧的替换项目

时间:2016-02-27 00:44:54

标签: c linux ubuntu vim vi

我们有一个基本的c代码,例如;

if (a > b && a < c) {

    min = a ; }

我想知道如何使用“&gt;”更改“&lt;”s的长模式和“&gt;”s与“&lt;”。

但是当我尝试这样做时,通常“&lt;”s变为“&gt;”,这不是问题;

但之后,当我尝试用“&lt;”s改变“&gt;”时,它失败了,因为我之前改变的那些改变了,即它们变成了之前

因此,需要立即更改它们,但是,例如,vim终端操作;

:%s/>/< | %s/</>

无法成功。

我怎么能解决这个问题?

1 个答案:

答案 0 :(得分:3)

使用字典映射到他们的替代品。试试这个

:%s/\v(\<|\>)/\={'<':'>','>':'<'}[submatch(0)]/g