!〜方法对Ruby中的String有什么作用

来自@ sawa的回答: https : //stackoverflow.com/a/21892359/226255

什么!~做什么?

例:

 re = /[^\d.,]/ "0.0687987167581341,0.120311605902415,89.8399554017928,198.151088713489" !~ re 

我在String或Regexp中找不到任何文档

方法!~=~的倒数,即!(=~) 。 来自Ruby Object#!~

如果两个对象不匹配(使用=〜方法),则[obj!~asse]返回true,否则返回false。

因此,因为String#=~执行字符串/正则表达式匹配,如果匹配则返回第一个匹配的索引,否则返回nilString#!~如果匹配则返回false ,否则返回true

这意味着正则表达式不匹配。 它是=~的倒数

这里还提到: Ruby正则表达式在Perl中是否有像“!〜”这样的不匹配运算符?

显然,由于某种原因没有记录。