同様に、Complex("1i") も $~ を nil にするようです。

% ./ruby -e '        
/a/ =~ "a"
p $~
p Complex("1i")
p $~'
#<MatchData "a">
Complex(0, 1)
nil

ちなみに Complex("i") は ArgumentError になってしまうので 1i
としました。
-- 
[田中 哲][たなか あきら][Tanaka Akira]