gsub - 以大写形式首次出现一个字符

ale*_*mur 2 ruby regex

我正在研究正则表达式(使用ruby),我想在单词中找到第一个出现非数字字符并使其大写.

我一直在尝试:

word.gsub!(/\D{0,1}/) do |w|
    w.capitalize
end
Run Code Online (Sandbox Code Playgroud)

希望它只是捕获第一次出现的非数字,但它会返回所有大写字母.这样做的正确方法是什么?

非常感谢!!!

Xav*_*olt 6

ggsub!代表"全球",意思是"在字符串中每次出现." 你想要常规sub!.那只会找到第一个.干杯!

  • 你也可以将它缩短为`word.sub!/\D /,&:capitalize`. (2认同)