iT邦幫忙

2023 iThome 鐵人賽

DAY 11
0
自我挑戰組

自我挑戰Ruby系列 第 11

Day 11 - 字串3

  • 分享至 

  • xImage
  •  

字串[ ]

之前有提到可以藉由字串[ ]取得字串內的字。以下是其他使用方法:

  • 字串[索引值] → 可以只取某個位置

  • 字串[起始值, 長度」→從哪個位置開始取,取幾個字

  • 字串[範圍] → 例如: 0..-1

  • 字串[正規表達式,0] → 例如:'food'[/o/] 會是 o

  • 字串[子字串] → 例如:'hello world'['wo'] 會是 wo 但 'hello world'['ao'] 會成為nil

字串物件

之前提過,Ruby是一個物件導向的程式語言,在這個世界是以物件的方式呈現,

既然是物件,那就有很多方便的方法可以使用。

.empty? → 檢查是否是空白字串

.start_with? →是否以特定字開頭,例如:'hello'.start_with?('hell') 為true

.end_with? → 是否以特定字結尾,例如:'hello'.end_with?('ll') 為false

.include? → 是否包含特定的字,例如:'hello'.include?('a') 為false

計算類型

.length → 計算字元的數量

.size → 計算字元的數量

.bytesize → 計算bytes

.count → 計算

字母轉換

.capitalize → 首字大寫。

.upcase → 字母全大寫。

.downcase → 字母全小寫。

.swapcase → 大小寫互換,原本大寫變小寫,原本小寫變大寫。

數字型

.hex → 16進位,例如:'0x0a'.hex 為 10

.oct → 8進位,例如: '123'.oct 為83

.ord → 代表的ASCII碼,例如: 'h'.ord 為104

.to_i → 字串轉成整數,例如:'12.345'.to_i 為12,基底為10;'123def'.to_i(16)為1195503。

取代型

.sub → 將一個符合條件的字串取代,例如:'hello'.sub(/[aeiou]/, '') 為 h*llo

.gsub → 將全部符合條件的字串取代,例如:'hello'.gsub(/[aeiou]/, '') 為 hll

Day 11 結語

其實在Ruby之中還有很多方法,不單單只有這些,

雖然可能沒辦法都記下來所有的方法,但當有接觸過或看過,

未來會了解到的越來越多,記得的也會越來越多。


上一篇
Day 10 - 字串2
下一篇
Day 12 - 流程控制1
系列文
自我挑戰Ruby30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言