【发布时间】:2020-05-12 08:19:05
【问题描述】:
在编辑器(例如 Rubymine 或 IntelliJ)中给定一堆字符串,如下所示:
列表:[“必需”,“入境时待定”,“呼吸器、手套、工作服等”]
如何使用内置的正则表达式搜索和替换将首字母转换为大写?
到这里:
列表:[“必需”、“入境时待定”、“呼吸器、手套、工作服等”]
注意:“TBD”应保留为“TBD”而不是“Tbd”
【问题讨论】:
标签: regex rubymine case-conversion
在编辑器(例如 Rubymine 或 IntelliJ)中给定一堆字符串,如下所示:
列表:[“必需”,“入境时待定”,“呼吸器、手套、工作服等”]
如何使用内置的正则表达式搜索和替换将首字母转换为大写?
到这里:
列表:[“必需”、“入境时待定”、“呼吸器、手套、工作服等”]
注意:“TBD”应保留为“TBD”而不是“Tbd”
【问题讨论】:
标签: regex rubymine case-conversion
您可以匹配前面带有" 的任何小写字母:
搜索:(?<=")\p{Ll}
替换:\U$0
请参阅regex demo。检查匹配大小写以确保仅匹配小写字母。
详情
(?<=") - 一个积极的向后看,确保前面的字符是 "
\p{Ll} - 任何 Unicode 小写字母。请注意,\U - 大写转换运算符 - 如果您不需要限制其范围,则不需要尾随 \E 并且 $0 反向引用指的是整个匹配值,不需要用一个包裹整个模式捕获组。
【讨论】: