在 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