On Fri, 10 Nov 2000 11:13:17 +0900, Yukihiro Matsumoto
<matz / zetabits.com> wrote:

>Hi,
>
>Can you tell the results from the following?
>And what is the reasons for the results?
>
>  line = "abab"
>  print line.sub!(/a/, 'A') + line.sub!(/b/, 'B'), "\n"
>
>  line = "abab"
>  print line.sub!(/a/, 'A') + " " + line.sub!(/b/, 'B'), "\n"
>

When I tried this, I saw something funny different from what you
meant:

$ruby eval.rb
ruby> a = 'abab'
   "abab"
ruby> line = 'abab'
   "abab"
ruby> line
   "line\n"
ruby> a
   "abab"
ruby> print a
abab   nil
ruby> print line
print line
   nil

This is on ruby 1.4.  Is it different on 1.6?

Johann
--
J.H. Spies - Tel. 082 782 0336 / 023 55 11 568
     "Therefore, my beloved brethren, be ye stedfast, 
      unmoveable, always abounding in the work of the Lord, 
      forasmuch as ye know that your labour is not in vain 
      in the Lord."    1 Corinthians 15:58