其他分享
首页 > 其他分享> > 用正则表达式进行模块例化

用正则表达式进行模块例化

作者:互联网

  IC设计、验证中,在搭建环境或者设计top层时,往往需要将对应的模块例化进相应的代码中,而如果要例化的模块接口比较多,达到上百个,一个个的去修改格式就比较麻烦,使用正则表达式可以节省时间。

需要用到的正则表达式

说明

\( \)

选中括弧中的内容,可以分别用\1和\2再次引用第1个括弧和第二个括弧中的内容

例子:s/\(123\)456\(789\)/abc\1efg\2

表达式意思:将123456789替换成123efg789

.

匹配任意一个字符

\s

匹配空白字符,包括tab和空格

\+

匹配多个“\+”前的内容

例子:\s\+  表达式意思:匹配多个空格

 

 

 

完成从左到右的替换需要使用

:33,218s/\(\s\+\)\(.\+\),/\1.\2(\2),

说明

范围行号  匹配句首的多个tab或者空格 匹配接口内容

 

之后所有的例化只需要更改行号,然后改一下最后一个接口就可以了(最后一个接口没有“,”结尾,正则表达式匹配不到)

:33,218s/\(\s\+\)\(.\+\),/\1.\2(\2),

 

标签:括弧,匹配,正则表达式,接口,空格,例化,模块
来源: https://www.cnblogs.com/root0509/p/14761878.html