如何使用Regex将字符串的首字母转换为大写

时间:2020-01-26 21:37:25

标签: regex rubymine case-conversion

在编辑器(例如Rubymine或IntelliJ)中给出如下所示的一串字符串:

列表:[“必填”,“进入时的待定待办事项”,“呼吸器,手套,工作服等”]

如何使用内置的正则表达式搜索和替换将首字母字母转换为大小写?

对此:

列表:[“必填”,“进入时待定”,“呼吸器,手套,工作服等”。

注意:“ TBD”应保持为“ TBD”而不是“ Tbd”

2 个答案:

答案 0 :(得分:2)

(我认为IntelliJ和RubyMine具有有效的Java regex规则。)

(为了我未来的自己),我使用了以下正则表达式:

搜索:"(?)([a-z])

替换:"\U$1\E

顺便说一句:无法弄清为什么还要选择大写字母。 (耸耸肩)

enter image description here

成功了!

答案 1 :(得分:2)

您可以匹配任何以"开头的小写字母:

搜索(?<=")\p{Ll}
替换\U$0

请参见regex demo。选中 区分大小写 ,以确保仅匹配小写字母。

详细信息

  • (?<=")-向后看的肯定,确保前面的字符为"
  • \p{Ll}-任意Unicode小写字母。

请注意,\U-大写转换运算符-如果不需要限制尾随\E,并且$0后向引用是整个匹配值,则不需要用捕获组包装整个模式。

相关问题