用vi進行verilog模塊例化的技巧

在編輯verilog代碼時,特別在例化模塊時,端口較多時,手動編輯比較費事,一般用vi中的正則表達式比較方便,舉一最常用的例子,
將. clk改成. clk(clk),
命令為
:114 s/\.\(.*\)_*/\.\1(\1),/g
解釋
其中114為行數(shù);
s為字符替換符;
/為要替換的字符開始字符
\.匹配 . 字符;
\(\)為整體字符,包在它里面的所有字符可以作為一個整體,后面可以用\1代替,比如\(.*\)為所有字符串為一個整體;
.其中.代表匹配任意一個字符,代表匹配的數(shù)目為0到任意多個;
_此處代表一個空格,_*代表匹配任意多個空格,包括0個;
第二個/代表要替換成的字符開始字符;
\.同上;
\1匹配\(.*\)內(nèi)的.*;
()代表匹配的括號;
,代表匹配逗號;
/g表示全局替換。
其中匹配字符串,帶有下劃線和數(shù)字的字符串,但不包括空格,可以用\w*就可以匹配,其中. 代表匹配任何的字符包括空格

過了很久在用上面的命令發(fā)現(xiàn)有問題,所以改為下面的命令

刪除空行的命令:
:n1,n2g/^_*$/d,其中n1和n2為行數(shù)

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容