Ruby语言入门(6)- 字面值
上一篇 /
下一篇 2013-01-29 15:48:28
/ 个人分类:语言
字面值
我们把类似字符串“hello world”这样可以直接写入
Ruby程序中的值叫做字面值。
数值字面值
123整数
-12带符号的整数
1.2浮点数
?aa的AscII码
字符串字面值
"this is a string expression\n" 字符串
'a' 字符
'aaa' 字符串
在被单引号括起来的字符串中,除了\\(反斜线本身)、\'(单引号)和行尾的\(忽略换行)以外,不会对字符串内容作任何处理。
字符串中,以\来处理的字符有:
\tTab
\n换行
\r回车
\f换页
\b退格
\eEsc
\s空白
\\\
\''
字符串中,以%来处理:
%!STRING! : 双引号中的字符串
%Q!STRING! : 同上
%q!STRING! : 单引号中的字符串
%x!STRING! : 命令输出
%r!STRING! : 正则表达式
%w!STRING! : 字符串数组(以空白字符切分各元素)
%W!STRING! : 字符串数组(以空白字符切分各元素)。展开式、反斜线表示法都有效
%s!STRING! : 符号。展开式、反斜线表示法都无效
实例:
%(()) => "()"
%w(foo bar baz) => ['foo', 'bar', 'baz']
%w(foo\ bar baz)=> ["foo bar", "baz"]
字符串中,以展开式来处理:
ruby = "RUBY"
"my name is #{$ruby}" #=> "my name is RUBY"
'my name is #{$ruby}' #=> "my name is #{$ruby}"
"my name is #$ruby" #=> "my name is RUBY"
在以双引号(")括起来的字符串表达式、命令字符串以及正则表达式中,可以使用“#{表达式}”把表达式的内容(以字符串的形式)嵌入其中。若表达式是以($,@)开始的变量的话,则可以省略{}部分,只使用“#变量名”的形式即可.
集成字符串字面值
<<[-]["'`]标识符["'`]
...
标识符
print <<EOS # (从这里开始)直到标识符 EOS 之前的部分就是字面值
the string
next line
EOS
等同于:
print " the string\n next line\n"
可以当作一个整体进行应用:
# 将集成字符串用作被调
p <<LABEL.upcase
the lower case string
LABEL
# => "THE LOWER CASE STRING"
正则表达式
被/括起来的部分就是正则表达式,例如:/Ruby/i
数组表达式
被[]括起来的部分就是数组表达式,例如:[1, 2, 3]
哈希表表达式
被{}括起来的部分就是哈希表达式,例如:{1=>2, 2=>4, 3=>6}
范围对象
范围表达式两端都是数值字面值时,每次计算都将返回同一个对象。除此以外,每次计算时都会返回新的范围对象。例如: [1..9]
符号
符号应用的语法如下:
指定给Symbol字面值的操作符,必须是那些可以作为方法进行再定义的操作符
收藏
举报
TAG: