From @sawa's answer at: https://stackoverflow.com/a/21892359/226255
What does !~
do?
Example:
re = /[^\d.,]/
"0.0687987167581341,0.120311605902415,89.8399554017928,198.151088713489" !~ re
The method !~
is the inverse of =~
, that is !(=~)
. From the Ruby Object#!~
documentation :
[obj !~ other ] returns true if two objects do not match (using the =~ method), otherwise false.
So, since String#=~
performs a string/regex match returning the index of the first match if matched and nil
otherwise, String#!~
return false
if matched and true
otherwise.
It means the regex does not match. It's the inverse of =~
Also mentioned here: Does Ruby regular expression have a not match operator like "!~" in Perl?
Apparently it's not documented for some reason.
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.