Ruby學習筆記本

1、<=>是什麼意思 – 會把左右兩個於算互相做比較,比較大的會列印出1,比較小的會變-1

ex . 3 <=> 2 #1
4 <=> 2 #1
2 <=> 4 #-1
1 <=> 100 #-1

https://ruby-doc.org/core-2.6.3/Array.html#method-i-min


2、time取用 – 可以取得當日時間,可以跟其他時間相減算一些數字來用

https://www.runoob.com/ruby/ruby-date-time.html


3、split拆解一個字串 – 要用map、select,記得不能只有一個元素,會噴錯

number = “123456789”
number.split(“”) #[1,2,3,4,5,6,7,8,9

4、with_index – 除了會帶變數外,會順便把index帶進去

Ruby學習筆記本 1
Ruby學習筆記本

5、divmond(num) – 這個可以幫你直接算出,除以num後的商和餘數

Ruby學習筆記本 3
Ruby學習筆記本

6、bytes – 這個用法可以把文字個別拆開以後,直接幫你把他轉成ASCII,結果同split(“”).map { |i| i.ord }

Ruby學習筆記本 5
Ruby學習筆記本

7、sub(“要替換的字詞”, “被替換的字詞”) – 這個可以幫你把指定的字換成另一個字(這個只換一個)

Ruby學習筆記本 7
Ruby學習筆記本

8、gsub(“要替換的字詞”, “被替換的字詞”) – 跟sub很像,不一樣的地方是,這個g是global的意思,也就是可以把一個字串裡面的全部指定字,換成另一個

Ruby學習筆記本 9
Ruby學習筆記本

9、gsub + /\W/ – 常規表示法,這樣寫可以把一個字串除了數字以外的符號都清掉,記得/\w/那邊不用加上””

Ruby學習筆記本 11
Ruby學習筆記本

進階用法 – 用常規表示法,一次性替換多個字組,ex.”abcdefgabc” – 替換成”ABCdefgABC”

Ruby學習筆記本 13
Ruby學習筆記本

10、join(“”) – join()是一個Array類方法,該方法返回通過將數組的每個元素轉換為由給定分隔符分隔的字符串而創建的字符串。

https://vimsky.com/zh-tw/examples/usage/ruby-array-class-join-function.html

11、reverse – 翻轉String

Ruby學習筆記本 15
Ruby學習筆記本

11、Array(number) – 可以把不管是INT還是Array,都直接轉成陣列

Ruby學習筆記本 17
Ruby學習筆記本

12、Math.sqrt(num) – 開根號(會有小數點)

**進階用法 – Integer.sqrt(num) – 開根號(不會有小數點,只會有整數)

Ruby學習筆記本 19
Ruby學習筆記本

13、A.ZIP(B) – 將多個陣列以 index 對 index 的方式合併成一個巢狀陣列,長度由原陣列決定,傳入的陣列若比原陣列短,則會填入 nil

Ruby學習筆記本 21
Ruby學習筆記本

14、”%.5d” % num – 在num前面補0,可以把整體補到5位數
“%.5f” % num – 在小數點後面補0,補5位數

Ruby學習筆記本 23
Ruby學習筆記本

15、Date.parse(date)、Date.today – 日期函數,可以抓出今日日期、相減的話可以算數相差多少時間,最後再加上to_i,可以直接變成數字

Ruby學習筆記本 25
Ruby學習筆記本

16、match

只匹配第一次,返回為MatchData型別。

如果未能找到,返回nil

如果找到返回結果中包括兩部分:1、完整匹配部分  2、()匹配到的內容

Ruby學習筆記本 27
Ruby學習筆記本

17、scan

查詢全部匹配的內容。如果正則表達是中帶有(),則只記錄()的匹配內容。

返回結果為陣列,如果沒有匹配的結果,陣列長度為0,否則返回匹配內容

Ruby學習筆記本 29
Ruby學習筆記本

18、partition – 把一個陣列拆成兩塊,block裡面放上篩選條件,篩出來的會在陣列第一塊,其他全部放在第二塊

Ruby學習筆記本 31
Ruby學習筆記本

19、count用法

Ruby學習筆記本 33
Ruby學習筆記本