当前位置: 技术问答>linux和unix
vim高手请进,关于跨行替换问题
来源: 互联网 发布时间:2016-07-24
本文导语: bool flag = m_obj_cat.call(); if( flag == false) { return NOT_OK; } 现有大量这样的语句,需要转换成如何下,在vim中如何用一个(或2个)命令完成替换 ? if(!m_obj_cat.call()) { return NOT_OK; } 可行的即结贴。 ...
bool flag = m_obj_cat.call();
if( flag == false)
{
return NOT_OK;
}
现有大量这样的语句,需要转换成如何下,在vim中如何用一个(或2个)命令完成替换 ?
if(!m_obj_cat.call())
{
return NOT_OK;
}
可行的即结贴。
|
下面这个比较丑,不过可以work:
:%s/bool flag = m_obj_cat.call();_.if( flag == false)/if(!m_obj_cat.call())/g
主要是中间那个_.是匹配包括换行符在内的任意一个字符。
:%s/bool flag = m_obj_cat.call();_.if( flag == false)/if(!m_obj_cat.call())/g
主要是中间那个_.是匹配包括换行符在内的任意一个字符。
|
两个就比较简单了,先g/s把if( flag == false) 替换成if(!m_obj_cat.call()) ,再g/d删除bool flag = m_obj_cat.call();