一. 生成乙個字串
字串是string類的物件,一般使用字面值來建立。
ruby **
#e8.2-1.rb
str1 = 'this is str1'
str2 = "this is str2"
str3 = %q/this is str3/
str4 = %q/this is str4/
str5 =《eof_string
here is string document, str5
line one;
line two;
line three.
ok
eof_string
puts str3
puts str4
puts str5
執行結果:
>ruby e8.2-1.rb
this is str3
this is str4
here is string document, str5
line one;
line two;
line three.
ok>exit code: 0
%q 用來生成單引號字串;%q用來生成雙引號字串。%q或者%q後面跟著的是分隔符,可以是配對的! !; / /; < >; ( ); [ ] ;;等等。
str5是乙個字串文件,從 《和文件結束符的下一行開始,直到遇到乙個放置在行首的文件結束符,結束整個字串文件。
乙個陣列可以用join 方法轉換成字串,join( ) 內的引數也是乙個字串,用來分隔陣列的每個元素,例如:arr.join(", ")。
二. 字串操作
字串既然是string類的物件,string類的方法你都可以使用在字串變數上,string類的方法非常多,下面略舉幾例。
ruby **
#e8.2-2.rb
str = ' this' + " is"
str += " you"
str << " string"
<< " ."
puts str*2 # => this is you string . this is you string .
puts str[-12,12] # => you string .
三. 字串轉義
雙引號括起來的字串會有轉義,例如:「\n」 表示換行。還有一些其它的轉義符號,比如製表符之類。
ruby **
#e8.2-3.rb
str = " this is you string ."
puts str*2 # => this is you string . this is you string .
str = " this is you string .\n"
puts str*2 # => this is you string .
this is you string .
str = " \tthis is you string ."
puts str # => this is you string .
str = ' this\'s you string .\n'
puts str # => this's you string .\n
單引號括起來的字串並不會對字串作任何解釋,你看到的是什麼便是什麼,有乙個例外:單引號字串裡的 單引號 需要轉義。
四. 字串內嵌表示式
在雙引號擴起來的字串中,不僅可以使用各種轉義符,而且可以放置任意的ruby表示式在 # 之中,這些表示式在使用這個字串的時候被計算出值,然後放入字串。
ruby **
#e8.2-4.rb
def hello(name)
" welcome, # !"
endputs hello("kaichuan") # => welcome, kaichuan !
puts hello("ben") # => welcome, ben !
字串內嵌表示式,使得你能夠更加靈活地組織**,表現出更強、更多的動態特性。
完整閱讀,請看我寫的 ruby語言中文教程all in one
NOIP學習之字串 82 最長單詞2
測試鏈結 總時間限制 1000ms 記憶體限制 65536kb 描述 乙個以 結尾的簡單英文句子,單詞之間用空格分隔,沒有縮寫形式和其它特殊形式,求句子中的最長單詞。輸入 乙個以 結尾的簡單英文句子 長度不超過500 單詞之間用空格分隔,沒有縮寫形式和其它特殊形式。輸出 該句子中最長的單詞。如果多於...
ORACLE in 字串,字串,字串
因為傳進來的引數是 字串,字串,字串,要實現in 字串,字串,字串 select from htl price p where p.hotel id 30073328 and p.able sale date between to date 2009 03 27 yyyy mm dd and to ...
字串,字串陣列,字串指標!!
字串 字元陣列實際上是一系列字元的集合,也就是 字串 string 字串陣列 在c語言中,沒有專門的字串變數,沒有string型別,通常就用乙個字元陣列來存放乙個字串。c語言規定,可以將字串直接賦值給字元陣列 在c語言中,字串總是以 0 作為串的結束符。上面的兩個字串,編譯器已經在末尾自動新增了 0...