我试着和下面代码中的操作符!~!=一起玩。但无法找出这样的区别。但我有疑问,如果不是这样的话,为什么ruby要介绍他们呢?

 2 !=3
# => true
 2 !~ 3
# => true
 c= [1,2,3]
# => [1, 2, 3]
 d=[1,4,5]
# => [1, 4, 5]
 c != d
# => true
 c !~ d
# => true

有谁能帮我说一下他们之间有什么不同吗?

最佳答案

The =~ operator及其阴性!~用于模式匹配。它被RegexpString重写以提供正则表达式模式匹配,但对于数字,它没有实现。这就是为什么2 =~ 3给出nil,所以2 !~ 3就是true

10-05 20:33
查看更多