我正在尝试检查一个条件:
name = gets.chomp
if name.capitalized == name
puts 'some text'
else
puts name.capitalize + 'some text'
我在终端中收到此错误:
test.rb:6:in
<main>': undefined method
大写'for“name”:String(NoMethodError)
答案 0 :(得分:1)
name = gets.chomp
if name.capitalize == name
puts 'some text'
else
puts name.capitalize + 'some text'
end
答案 1 :(得分:1)
如果您将capitalized?
方法添加到String
:
class String
def capitalized?
chars.first == chars.first.upcase
end
end
您将能够检查字符串是否大写并在逻辑中使用它。
'Ruby'.capitalized?
#=> true
编辑:似乎你只是试图将字符串本身大写而不是检查。在那种情况下:
'ruby'.capitalize
#=> 'Ruby'
应该做你需要的。
答案 2 :(得分:0)
这是String#capitalize。试试这个。
这是一个错字if name.capitalized
将其更改为if name.capitalize