> | ruby -e'str="abc"; str.gsub!(/[aeiou]/) {|m| p m; m.upcase > }; p str' > | "a" > | "Abc" > It seems for me it's working nice. What's wrong? Forget it. My blunder. I read the code like I moved from \w to [a-z]. So the I was somewhat surprised when the code matched only once with character class. No wonder it matched only once, as there was no more vovels in the string... - Aleksi