在Ruby中,我看到很多代码做像这样的事情:
def test(s)
s =~ /Macintosh/
end
测试一个字符串是否符合正则表达式的方法通常是使用=~
运算符。不过,这会返回一个整数或空值,具体取决于它是否找到匹配项。有没有一种方法可以进行相同的操作,但使其返回布尔值来指示它是否匹配?
我想到的两个可能的解决方案是!(s =~ /Macintosh/).nil?
和!(s !~ /Macintosh/)
,但这些都不太容易理解。是否有类似以下的方法:
def test(s)
s.matches?(/Macintosh/)
end
!!(string =~ /some regex/)
是什么意思? - Radi