VI 将下划线后面的每个首字母变为大写

VI 将下划线后面的每个首字母变为大写

找到了这个网站:

它适用于第一个字符,但我的行是这样的

this_is_a_string

我想要这个

This_Is_A_String

有什么想法吗?

VI 命令会很好,但任何其他简单的解决方案也可以

答案1

:%s/^./\U&/然后做:%s/_./\U&/g

第一个将把每一行的首字母大写,第二个将把所有行中每个下划线后的第一个字母大写。

答案2

结合两个搜索/替换,Rob 建议:

:%s/^.\|_./\U&/gc

将搜索一行中的第一个字符或 之后的第一个字符_

解释:

  • \|指定“或”
  • g将更改一行中的所有出现
  • c将要求确认

相关内容