I think this is a regexp bug

I’d greatly appreciate if anyone could explain what’s up with this:

$KCODE=‘u’

"Ã " =~ /Ã /i
=> 0

"Ã " =~ /[Ã ]/i
=> 0

“ā” =~ /ā/i
=> 0

“ā” =~ /[ā]/i
=> nil

That has to be a bug, right?

Maybe this is a good opportunity to start looking at oniguruma. Is
anyone aware of backward compatibility issues when going from the
regular Regexp to oniguruma?

Daniel

On May 25, 2007, at 9:16 AM, Daniel DeLorme wrote:

=> nil

That has to be a bug, right?

I can’t reproduce it:

fxn@feynman:~/tmp$ cat foo.rb
$KCODE = ‘u’
puts "Ã " =~ /Ã /i
puts "Ã " =~ /[Ã ]/i
puts “ā” =~ /ā/i
puts “ā” =~ /[ā]/i
fxn@feynman:~/tmp$ ruby foo.rb
0
0
0
0
fxn@feynman:~/tmp$ ruby -v
ruby 1.8.5 (2006-12-25 patchlevel 12) [i686-darwin8.8.1]

Xavier N. wrote:

0
0
0
fxn@feynman:~/tmp$ ruby -v
ruby 1.8.5 (2006-12-25 patchlevel 12) [i686-darwin8.8.1]

Ah, silly me I forgot to test on different versions. It
happens on 1.8.4 but neither on 1.8.5 or 1.8.6

Thanks for the sanity check.

Daniel