在红宝石你怎么判断一个字符串输入大写或小写?(In ruby how do you tell if

2019-07-04 02:43发布

我试图写一个程序,当一个字母输入,如果是大写的,把它留在大写并返回它,如果它是小写字母,然后转换为大写。 我怎样写这能告诉我们,如果字符串是原来大写或小写?

Answer 1:

只需将字符串转换为大写,它与原来的比较

string == string.upcase

或小写

string == string.downcase

 

编辑:在上述解决方案,只有英文字母作品的评论中提到。 如果你需要一个国际解决方案,而不是使用

def upcase?(string)
    !string[/[[:lower:]]/]
end

它使用正则表达式来扫描小写字母串和否定的发现告诉字符串是否全部大写。



Answer 2:

听起来像是你只需要转换为大写,并不需要用小写字母,如果在检查所有的打扰,因为应用#upcase到已大写不会影响它的东西。



Answer 3:

对于一个字符串,你可以使用start_with? 方法为好。

user_input = gets.chomp

if user_input.start_with?(user_input.downcase)
    user_input.upcase!
end


文章来源: In ruby how do you tell if a string input is in uppercase or lowercase?