=~ 是ruby里的正则表达式(regex)的匹配符号
"a" =~ [a] 是 true
"a" =~ [b] 是 false
左面是对比不定量,右边是正则表达式,这个可以去具体学习一下
LS的句子里的运用是
unless gets =~ /[a-z]/ = 除非gets里有a-z的小写字母
这个方法会看gets里有没有英文中a-z的小写字母,如果没有就会写出ALL CAPS
除了这个方法,还有另一个方法:
a = "This is a good day!"
b = a.upcase
puts "all upper case" if a == b
这个方式有两个好处。
1. 易懂
2. ruby的upcase函数有多语言支持,不仅仅能处理英文的大小写。
另,你说的a in 'A'..'Z'有语法错误。
in的普遍用法是 for i in 0..10,是让i循环10次每次给它赋予一个不同的值。如果你知道别的语言你就应该知道这是for语句的写法。在这里用来判断语句的大小写不通顺也不能用。
因为ruby适用范围较窄。
Ruby明显比其他类似的编程语言年轻,又因为Ruby是日本人发明的,所以早期的非日文资料和程序都比较贫乏,所以在网上仍然可以找到类似“Ruby的资料太少”之类的批评。
在Ruby语言中,任何东西都是对象,包括其他语言中的基本数据类型,比如整数变量没有类型,Ruby的变量可以保存任何类型的数据。任何东西都有值,不管是数学或者逻辑表达式还是一个语句,都会有值。ruby语言很优雅,可以做到不需要注释就可以读懂。
ruby语言特点:
Ruby 是开源的,在Web 上免费提供,但需要遵守开源软件协议。
Ruby 是一种通用的、解释的编程语言。
Ruby 是一种真正的面向对象编程语言。
Ruby 是一种类似于 Python 和 Perl 的服务器端脚本语言。
Ruby 可以用来编写通用网关接口(CGI)脚本。
Ruby 可以被嵌入到超文本标记语言(HTML)。
Ruby 语法简单,这使得新的开发人员能够快速轻松地学习 Ruby。