• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

一步一步学Ruby(四):Ruby标准类型

原作者: [db:作者] 来自: [db:来源] 收藏 邀请
Ruby 的标准类型包括数字(Numeric)、字符串(String)、区间(Range)以及正则表达式(Regexp)。
 
  • 数字
  • 字符串
  • 区间
  • 正则表达式

数字

Ruby 的数字包括整数(Integer)和浮点数(Float),这些类型都直接或间接继承自 Numeric。Ruby 的整数并没有长度限制,一定范围内的整数是 Fixnum 对象,当超出该范围则会自动转换成 Bignum。
 


Fixnum < Integer < Numeric
Bignum < Integer < Numeric
Float < Numeric
所有的浮点数类型都是 Float,无论它有多长。


和所有的语言一样,我们可以通过前导符号标定数字的格式。
  • 0 : 八进制。
  • 0d : 十进制。
  • 0x : 十六进制。 
  • 0b : 二进制。

我们可以用下划线(_)来分隔数字。
a = 100_874_6   类似我们习惯的 123,456,789。

"?x" 和 "?\cx(或 ?\C-x)" 分别用于显示字符或控制字符的整数值。
puts ?a
puts ?\n
puts ?\r
puts ?\ca # Ctrl + a

字符串

Ruby 字符串由 8bit 字节序列组成。字符串定义方式有很多种

简单点的是用单引号或双引号,当然包括我们熟悉的转义符。
s = 'That\'s Right!'
s = 'escape using "\\"'
s = "Hello, World!"
其中双引号字符串内部可以使用 #{expr}, 类似 C# String.Format。
可以使用局部变量,全局变量可省略大括号,也可以表达式。

另外还有更奇怪的,%q 相当于单引号,%Q 相当于双引号,还有 "here documents"。这些标记都通过特定的分界标记来定义字符串。

字符串类 String 提供了大量的操作方法,细节可参考类库文档。

区间

区间表示一种序列。在 Ruby 中,使用 ".." 表示闭区间,而使用 "..." 表示半闭半开区间,区别在于闭区间包含右端的值,而半闭半开区间则不包含。

区间不仅仅是整数,也可以是字符串等。

区间类型 Range 提供了很多操作方法。

正则表达式

Ruby 在语言层面提供了正则表达式的支持,我们可以用下面三种方法创建 Regexp 对象。

我们可以用操作符 "=~" 来完成匹配(Match)操作。(操作副 "!~" 和此作用相反,是否定匹配)

"$~" 返回 MatchData 对象。
 
 

本文作者:王德水

未经本人同意,禁止转载


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
CVE-2019-5418:Ruby on Rails路径穿越与任意文件读取复现发布时间:2022-07-14
下一篇:
Ruby on Rails——一个完整的例子(五)发布时间:2022-07-14
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap