如何在红宝石字符串中括号

  • 本文关键字:字符串 红宝石 ruby
  • 更新时间 :
  • 英文 :


我有此字符串"Unit Number"。我想将其更改为"Unit (Number)"

我将如何插入括号的第二个字?

例如,它可能是"Animal Name",并且需要看起来像"Animal (Name)"

我一直在玩不同的方法,我距离解决方案遥远。

def parenthesize_last_word(string)
  str = string.split
  str.map { |word| word == str.last ? "(#{word})" : word }.join(' ')
end
p parenthesize_last_word 'Unit Number' # "Unit (Number)"
p parenthesize_last_word 'Animal Name' # "Animal (Name)"

或使用sub:

p 'Unit Number'.sub(/(w+)$/, '(1)') # "Unit (Number)"
p 'Animal Name'.sub(/(w+)$/, '(1)') # "Animal (Name)"

您可以使用Ruby String #sub

"Unit Number".sub(/(w+)$/, '(1)') -> "Unit (Number)"
"Animal Name".sub(/(w+)$/, '(1)') -> "Animal (Name)"

最新更新