到目前为止,我有:
def capitalized?(str)
str[0] == str[0].upcase
end
问题在于它返回
true
对于像 "12345"
这样的字符串, "£$%^&"
和 "9ball"
等。如果第一个字符是大写字母,我希望它只返回 true。
最佳答案
您可以使用 match?
如果第一个字符是 A
范围内的字母,则返回 true至 Z
是否大写:
def capitalized?(str)
str.match?(/\A[A-Z]/)
end
p capitalized?("12345") # false
p capitalized?("fooo") # false
p capitalized?("Fooo") # true
您也可以将正则表达式传递给
start_with?
:p 'Foo'.start_with?(/[A-Z]/) # true
p 'foo'.start_with?(/[A-Z]/) # false
关于ruby - 如何创建一个方法来检查字符串是否以大写字母开头?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58745936/