`
小小龙猫
  • 浏览: 98359 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

读《programming ruby》笔记 一 String

阅读更多

学习了一段时间的Ruby on Rails,用它做了一些小东西,开始是直接看的《Agile Web Development with Rails 2nd》虽然很多东西做出来了,但是依然有些不懂的地方,所以现在回过头来好好看看Ruby的书。

在ruby中所有的事物都是对象,String也不例外,含有两个同样值的字符串其实是两个object,

a = "string"
b = "string"
c = a

puts a.object_id
puts b.object_id
puts c.object_id
#输出:
#
#21676710
#21676690
#21676710

 

字符串的连接

a ="hello,"
b ="world!"
puts a+b
puts a<<b
#输出:
#hello,world!
#hello,world!

如上面的代码示例,可以用 "+"和"<<"进行两个字符串的连接。如果字符串太长在代码里需要换行可以用下面的方法:

a ="hello,\
       world!"
b ="hello,"\
  +"world!"
puts a
puts b
#输出:
#hello,       world!
#hello,world!

 上面我们演示了在双引号内和引号外的两种换行连接方式,在这里需要注意,第一种方法输出的结果中"world"字符前面带有空格,这是因为在给a赋值时world前有空格,而第二行的格式是包含在引号内的。

 

双引号和单引号的区别:

双引号内支持更多的转义字符 比如\n

a ="hello,\nworld!"
b ='hello,\nworld!'
puts a
puts b
#输出:
#hello,
#world!
#hello,\nworld!

双引号内还支持表达式

 

a = "jack"
puts "who is #{a}"

#输出:
#who is jack

 表达式以#{expression}的形式插入双引号内输出表达式的值。

全局变量和类变量不需要{},如下:

$greeting = "Hello" # $greeting is a global variable
@name = "Prudence" # @name is an instance variable
puts "#$greeting, #@name"

#输出:
#Hello, Prudence
 

正则表达式:

ruby支持perl 标准的正则表达式,使用符号=~

a = "php is programming language ,ruby too"
puts a if a=~/php.*ruby/ 
puts a=~/php ruby/ 

#输出:
#php is programming language ,ruby too
#nil

 如果匹配成功则返回匹配的字符在字符串中的位置。

在ruby中还有一些全局变量可以方便的使用,$`返回匹配串前面的字符,$&返回匹配的字符串,$'返回匹配串后面的字符串。

 

def show_regexp(a, re)
  if a =~ re
    "#{$`}<<#{$&}>>#{$'}"
  else
    "no match"
  end
end

puts show_regexp('Fats Waller', /a/)
#输出:
#F<<a>>ts Waller
 

 

 

 

 

 

 

 

 

2
0
分享到:
评论

相关推荐

    Programming Ruby - The Pragmatic Programmer's Guide, 2nd Edition (2005) [annotated]

    《Programming Ruby - The Pragmatic Programmer's Guide》第二版(2005年注释版)是一本在IT行业中享有盛誉的经典书籍,专门针对Ruby编程语言进行了深入浅出的讲解。该书不仅覆盖了Ruby语言的基础知识,还探讨了其...

    Programming ruby.pdf

    《Programming Ruby》是一本关于Ruby编程语言的经典著作,由Dave Thomas、Andy Hunt和Chad Fowler合著。这本书自2004年初版以来,一直是学习Ruby的首选资源,被誉为“Pickaxe”书,因其封面的图标而得名。Ruby是一种...

    Programming Ruby.pdf

    《Programming Ruby》不仅仅是一本技术手册,它更像是一位经验丰富的导师,引导读者深入理解Ruby语言的本质和精神。书中通过大量的实例和详细的解释,帮助读者掌握Ruby的核心概念和编程技巧。此外,该书还涵盖了Ruby...

    Programming Ruby

    《Programming Ruby》是一本专注于介绍Ruby编程语言的经典著作,它为初学者和有经验的开发者提供了深入理解Ruby语言的全面指南。Ruby是一种面向对象、动态、灵活的编程语言,以其简洁、优雅的语法和强大的元编程能力...

    Programming Ruby 1.9 (3rd edition)和源码

    《Programming Ruby 1.9 (3rd edition)》是一本专为程序员编写的关于Ruby语言的权威指南,这本书的第三版详细介绍了Ruby 1.9版本的语言特性、库以及编程实践。Ruby是一种动态、面向对象的脚本语言,以其简洁、优雅的...

    Programming Ruby (English Version) and Source Code

    《Programming Ruby》是著名的Ruby语言教程,英文版的书籍旨在为全球开发者提供深入理解Ruby编程语言的途径。这本书详尽地介绍了Ruby的语法、特性、类库以及编程实践,是学习和进阶Ruby编程的宝贵资源。源代码的提供...

    《Programming Ruby》中文第2版源代碼下載

    《Programming Ruby》是一本经典的Ruby编程语言教程,中文第二版为中国的程序员提供了深入学习Ruby的宝贵资源。这本书的源代码下载对于读者来说是极其有用的,因为它允许读者在实践中探索和理解书中所阐述的概念。...

    ruby学习资源(Programming Ruby, Learning Ruby, The Ruby Way)

    内含以下4个文档: 1、Addison.Wesley.The.Ruby.Way.2nd.Edition.Oct.2006.chm 2、O'Reilly.Learning.Ruby.May.2007.chm 3、Programming Ruby 2e.pdf 4、ruby中文文档.chm

    Programming Ruby 2nd.pdf

    综上所述,《Programming Ruby 2nd》不仅是一本入门书,它还是连接Ruby语言与广大开发者的桥梁,帮助他们以新的方式思考问题,使用Ruby语言解决实际问题,并从一个活跃的社区中获得支持和灵感。通过对书籍的学习,...

    PROGRAMMING+RUBY中文版

    PROGRAMMING+RUBY中文版 PROGRAMMING+RUBY中文版 PROGRAMMING+RUBY中文版

    programming+ruby中文版第二版

    《Programming Ruby中文版第二版》是一本专注于Ruby编程语言的权威指南,对于想要深入学习和理解Ruby编程的读者来说,是一本不可多得的资源。Ruby作为一种动态、面向对象的编程语言,以其简洁、优雅的语法和强大的元...

    Programming Ruby中文版(第二版)

    Programming Ruby是关于Ruby语言的一本权威著作,也被称为PickAxe Book(镐头书,由封面上的工具得名)。本书是它的第2版,其中包括超过200页的新内容,以及对原有内容的修订,涵盖了Ruby 1.8中新的和改进的特性以及...

    Programming Ruby中文版 (第二版).pdf part2

    Programming Ruby中文版 (第二版).pdf

    Programming Ruby(读书笔记)-3章

    《Programming Ruby》是一本关于Ruby编程语言的经典书籍,它的第三章深入探讨了Ruby的基本语法和核心概念。在这一章中,作者介绍了变量、常量、符号、数组、哈希等核心数据类型,以及控制流(条件语句和循环)和方法...

    《Programming Ruby》(chm)

    《Programming Ruby》英文chm版计算机电子书下载-The Pragmatic Programmer's Guide,学习ruby一定要研究一下这本《Programming Ruby》电子书Ruby是一种跨平台、面向对象的动态类型编程语言。Ruby体现了表达的一致性...

    Programming Ruby中文版第二版[高清扫描版][带书签]和Programming.Ruby-2nd[高清文字版][带书签].pdf

    《Programming Ruby》中文版第二版是一本专注于Ruby编程语言的经典教程。这本书的两个版本——高清扫描版和高清文字版,都是为了便于读者学习和查阅,其中都带有书签功能,帮助读者快速定位到相关内容。 Ruby是一种...

    Programming Ruby中文版 (第二版).pdf part1(有4部分)

    Programming Ruby中文版 (第二版).pdf part1(有4部分)

Global site tag (gtag.js) - Google Analytics