第3章Ruby的資料類型
- 數字:Fixnum超出範圍後,自動轉換為Bignum。Numeric是所有數字類型的基類,Float和Integer類是Numeric的子類,Fixnum和Bignum都是Integer的子類型。整型可以是任意長度,在一定範圍內通過在一個ASCII字元或者一個逸出字元前面加一個問號得到它的數字值。
- 字串:Ruby的字串是簡單的8位位元組序列,可以用#{運算式}來把任何的Ruby運算式的值插入到字串中,如果那個運算式是全域變數、類變數或者執行個體變數,就可以省略大括弧。可以使用%q,%Q來構造字串,這方法在構建長字串時比較有用。%q,%Q用來界定單引號和雙引號的範圍。
- 字串的常用方法:String類含有大量標準方法,在該類的眾多方法中,那些方法名尾部是!的方法將會直接修改字串的內容,所以使用不帶!的方法是比較安全的。
(1)*:將字串的內容重複指定的次數之後,返回新字串。
(2)[ ]符號:a[nth]以整數的形式返回第nth位元組的內容,若nth為負值,則從字串的尾部算起,若nth超出範圍則返回nil。a[nth,len]:返回從第nth位元組算起的長度為len位元組的子字串。若nth為負數則從字串的尾部算起。
(3)next,next!,succ和succ!這四個方法用來返回下一個字串。
疑點:next,next!,succ和succ!的用法不是很瞭解。
(4)[substr]符號:若字串當中包含substr,則產生並返回一致的字串;若不包含substr的話,則返回nil。
(5)[regexp]:返回最初與regexp相匹配的子字串,與匹配操作相關的資訊將存入內部變數$~中。[regexp,nth]:若使用nth參數,則返回最初那個與regexp中第nth個括弧相匹配的子字串。
第7章 案頭應用和web開發
1.eRuby是一種技術。就是把Ruby代碼嵌入到頁面中,從而構建Web應用。Ruby類似Java,Ruby CGI類似Servlet,eRuby類似JSP,Rails類似Struts。實現嵌入式Ruby指令碼執行的方法有多種,應用最廣的一種為“eruby”。要注意:eRuby是一種技術,而eruby是一種實現。