!〜方法对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#=~
执行字符串/正则表达式匹配,如果匹配则返回第一个匹配的索引,否则返回nil
, String#!~
如果匹配则返回false
,否则返回true
。
这意味着正则表达式不匹配。 它是=~
的倒数
这里还提到: Ruby正则表达式在Perl中是否有像“!〜”这样的不匹配运算符?
显然,由于某种原因没有记录。