用红宝石中的字符串大写特定字母

时间:2018-07-13 11:47:50

标签: ruby string

让我说我有

str = "ashishjambhulkar"

我只想在"a"之后大写"j",结果变成

str = "ashishjAmbhulkar"

如何在红宝石中做到这一点?

我已经尝试过类似的事情

"ashishjambhulkar".split(//).map{ |x| x=="a" ? "A":x }.join('')

但是会更新给定字符串中的所有a

1 个答案:

答案 0 :(得分:6)

str.gsub('ja', 'jA')
str.gsub(/(?<=j).{1}/) { |char| char.capitalize } #for any char that coming after 'j'

More about gsubmore about regexp