微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > FPGA,CPLD和ASIC > 请问如何删除每行中 >> 2 这段字符(已解决)

请问如何删除每行中 >> 2 这段字符(已解决)

时间:10-02 整理:3721RD 点击:

请问如何删除每行中 >> 2 这段字符,用的是gvim或vi
    (12'h100 >> 2) : reg_rdata <= #UDLY {31'h0,o_spi_wr};
    (12'h104 >> 2) : reg_rdata <= #UDLY {31'h0,o_spi_rd};
    (12'h108 >> 2) : reg_rdata <= #UDLY {24'h0,o_spi_addr};
    (12'h10C >> 2) : reg_rdata <= #UDLY {16'h0,o_spi_wdata};
    (12'h110 >> 2) : reg_rdata <= #UDLY {16'h0,i_spi_rdata};
    (12'h114 >> 2) : reg_rdata <= #UDLY {31'h0,spi_rdata_vld_level};

这个简单
%s/(.*)\s:\s//g
把括号内部的所有字符,以及两个空格和一个冒号删除

如果只是删除 >> 2的话,匹配部分改为:\s>>\s2



   我解释的不清楚,呵呵,就是某一段程序中的>>2 删除,但是文本里其他部分的>>2不做改动,
应该是列操作,然后选中,我记不得命令了

找到了,ctrl + q  进入列选择模式,选择要删除的部分即可删除



   谢谢啦,我找到想要的命令了

你是想进入visual block模式,不过这个操作要求文本工整,操作对象对齐,有一定的局限性



   是的啊,但是s/// 是对全文替换吧,我只想对其中几行进行操作



   请教,列选之后,如何插入啊,我只知道删除。

ctrl + v(q) --> 进入visual block模式,然后选中想要替换的部分,按s键删除,同时进入编辑模式 --> 写入你想要的内容,最后按Esc键退出,完成简单替换
个人觉得,还是正则表达式好用,不想全部替换,也可以,比如,从n1行到n2行的部分替换,其他不变,命令如下:
n1,n2s/\s>>\s2//g,这不就好了

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top