我想在vi中使用大写单词(这是我想要更改连接的verilog语法文件)。
例如:
.STRING0(string1) .String2(string3)
,
我想大写一个整个字符串,只是第二个字符串的第一个字母
之类的东西.STRING0(STRING1) .String2(String3),
我的搜索模式是:
%s/\.\(.*\)(\(.*\)) \.\(.*\)(\(.*\))/
我需要像
这样的替换模式.\1(\2) .\3(\4)/
其中缓冲区\2
完全是大写的,缓冲区\4
的内容标题为封装。这怎么可能?
答案 0 :(得分:1)
使用\U
和\u
替换修饰符:
.\1(\U\2\E) .\3(\u\4)/
来自Vim的帮助:
`\u` next character made uppercase `\U` following characters made uppercase, until `\E` `\E` end of \u, \U, \l and \L
请注意,上述替换将使用\4
匹配的标题大小写,只要它只包含一个单词,即替换只会转换\4
匹配中的第一个字符。