在 Ruby 中使用模式匹配運算子

Nurudeen Ibrahim 2022年5月18日
在 Ruby 中使用模式匹配運算子

將任何資料與其他資料進行檢查稱為模式匹配。本文簡要討論了 Ruby 的基本模式匹配運算子(=~)。

Ruby 中的模式匹配運算子(=~

模式匹配運算子 (=~) 將正規表示式與字串匹配。如果字串滿足表示式,則運算子 (=~) 返回偏移量,否則返回 nil

RegexpString 定義這個運算子的方式相同,所以兩者的順序無關緊要。

示例程式碼:

p "David is a boy" =~ /boy/
p /boy/ =~ 'David is a boy'
p 'David is a boy' =~ /boy/
p /boy/   =~ 'David is a boy'

輸出:

11
11
11
11

如果沒有匹配,則返回 nil

示例程式碼:

p "David is a boy" =~ /girl/
p /girl/ =~ 'David is a boy'

輸出:

nil
nil