是否可以在替换字符串中使用 toupper? 假设,有这样的成员声明:
int myVar;
我想把变量名的第一个字母变成大写:
int MyVar;
不幸的是,这不起作用:
:1,$s/\(\w\+\)\s\+\(\w\)\(\w*\)\s*;/\1 \=toupper(submatch(\2))\3;/
最后,我可以使用\u 来执行此操作:
:1,$s/\(\w\+\)\s\+\(\w\)\(\w*\)\s*;/\1 \u\2\3;/
但我仍然很好奇在替换字符串中使用像 toupper 这样的函数是否有效?
最佳答案
尝试:
:1,$s/\(\w\+\)\s\+\(\w\)\(\w*\)\s*;/\=submatch(1)." ".toupper(submatch(2)).submatch(3).";"/
关于vi - 如何在替换字符串中使用 VIM 的 toupper?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3960498/