欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Ruby中的String對(duì)象學(xué)習(xí)筆記

 更新時(shí)間:2014年11月05日 09:31:51   投稿:junjie  
這篇文章主要介紹了Ruby中的String對(duì)象學(xué)習(xí)筆記,本文講解了String對(duì)象的定義、String對(duì)象的操作、使用數(shù)組下標(biāo)的方式操作字符串等內(nèi)容,需要的朋友可以參考下

1、String對(duì)象定義

String對(duì)象的定義可以使用""和'',對(duì)于單純的字符串,推薦使用''進(jìn)行定義,效率比""高,""與''的區(qū)別在于,''內(nèi)的字符串定義后就是最終形態(tài),即使如\n換行符,也會(huì)原樣輸出,而""更像是一個(gè)表達(dá)式,解析器會(huì)針對(duì)其中的特殊字符進(jìn)行處理,然后才會(huì)輸出,如下示例代碼:

復(fù)制代碼 代碼如下:

i  = 100
s1 = 'The value of i variable is #{i}!\n' #The value of i variable is #{i}!\n [未輸出變量i的值,并且不換行]
s2 = "The value of i variable is #{i}!\n" #The value of i variable is 100! [輸出i變量的值,并且換行]

String還有另外一種定義方式,可以定義出具有格式的字符串,如下示例代碼:

復(fù)制代碼 代碼如下:

s3 = <<OK_STR
 The value
  of i variable
 is #{i}
OK_STR

輸出:

復(fù)制代碼 代碼如下:

 The value
  of i variable
 is 100

特殊的字符串,使用``定義的字符串,會(huì)被當(dāng)作系統(tǒng)命令直接發(fā)送給操作系統(tǒng)執(zhí)行,如下示例代碼:

復(fù)制代碼 代碼如下:

puts `ruby -v` #輸出:ruby 1.9.3p392 (2013-02-22 revision 39386) [x86_64-linux]
puts `rails -v` #輸出:Rails 3.2.8

2、String對(duì)象操作

Ruby中String對(duì)象的操作方法非常多,可以參考Ruby官方提供的API文檔http://ruby-doc.org/core-2.0/String.html,這里總結(jié)點(diǎn)String在其他語(yǔ)言中不常見(jiàn)的操作方式,如下示例代碼:

復(fù)制代碼 代碼如下:

x = 'Ho!'
y = 'Hello from '
z = 'Hello'

puts x*30       #輸出:Ho!Ho!Ho!
puts y+self.to_s     #輸出:Hello from main
puts z<<' '<<'world!'    #輸出:Hello world!

puts x.object_id     #輸出:19196800
puts (x*3).object_id    #輸出:19196600

puts y.object_id     #輸出:19196780
puts (y+self.to_s).object_id  #輸出:19196520

puts z.object_id     #輸出:19196760
puts (z<<' '<<'world!').object_id #輸出:19196760

從上邊代碼可知,<<是String的append操作,返回的是原對(duì)象,+和*操作,返回的是新對(duì)象。

3、可以使用數(shù)組下標(biāo)的方式操作字符串中的字符

復(fù)制代碼 代碼如下:

m = 'TaoBao'
#改變第二個(gè)字符a為o
m[1] = 'o'
puts m
#截取第4到第6個(gè)字符的子字符串
puts m[3..5]

相關(guān)文章

  • Ruby中操作字符串的一些基本方法

    Ruby中操作字符串的一些基本方法

    這篇文章主要介紹了Ruby中操作字符串的一些基本方法,包括對(duì)字符串的壓縮和解壓縮等處理,需要的朋友可以參考下
    2015-05-05
  • Ruby中proc和lambda的兩個(gè)區(qū)別

    Ruby中proc和lambda的兩個(gè)區(qū)別

    這篇文章主要介紹了Ruby中proc和lambda的兩個(gè)區(qū)別,本文講解了在proc和lambda中,return關(guān)鍵字有不同含義、檢查參數(shù)的方式不同兩個(gè)重要區(qū)別,需要的朋友可以參考下
    2015-05-05
  • ruby 過(guò)程對(duì)象 解析

    ruby 過(guò)程對(duì)象 解析

    ruby 過(guò)程對(duì)象 解析...
    2007-11-11
  • Ruby數(shù)組(Array)學(xué)習(xí)筆記

    Ruby數(shù)組(Array)學(xué)習(xí)筆記

    這篇文章主要介紹了Ruby數(shù)組(Array)學(xué)習(xí)筆記,本文講解了Ruby中數(shù)組的定義、數(shù)組元素的訪問(wèn)、數(shù)組的操作、數(shù)組的運(yùn)算等內(nèi)容,需要的朋友可以參考下
    2014-11-11
  • ruby中并發(fā)并行與全局鎖詳解

    ruby中并發(fā)并行與全局鎖詳解

    最近在學(xué)習(xí)ruby,想著將自己學(xué)習(xí)的內(nèi)容總結(jié)一下分享出來(lái),下面這篇文章主要給大家介紹了關(guān)于ruby中并發(fā)并行與全局鎖的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友可以參考借鑒,下面來(lái)一起看看吧。
    2017-09-09
  • 詳細(xì)解析Ruby中的變量

    詳細(xì)解析Ruby中的變量

    這篇文章主要介紹了詳細(xì)解析Ruby中的變量,是Ruby學(xué)習(xí)中最基礎(chǔ)的知識(shí)之一,需要的朋友可以參考下
    2015-05-05
  • Ruby中require、load、include、extend的區(qū)別介紹

    Ruby中require、load、include、extend的區(qū)別介紹

    這篇文章主要介紹了Ruby中require、load、include、extend的區(qū)別介紹,require、load用于文件,如.rb等等結(jié)尾的文件,include、load則用于包含一個(gè)文件中的模塊,需要的朋友可以參考下
    2015-05-05
  • Ruby初學(xué)筆記之Hello World

    Ruby初學(xué)筆記之Hello World

    這篇文章主要介紹了Ruby初學(xué)筆記之Hello World,本文是一篇Ruby自學(xué)筆記,本文分別用普通方法、函數(shù)、類(lèi)輸出Hello World,從一個(gè)一個(gè)的例子中了解Ruby編程,需要的朋友可以參考下
    2015-06-06
  • rails "No route matches" 錯(cuò)誤的解決方法

    rails "No route matches" 錯(cuò)誤的解決方法

    有時(shí)候 rails 會(huì)出現(xiàn)
    2008-12-12
  • Ruby中case表達(dá)式詳解

    Ruby中case表達(dá)式詳解

    本文主要介紹了Ruby中case表達(dá)式的兩種形式以及分析,有需要的朋友可以參考下
    2014-10-10

最新評(píng)論