Unicode problem with mb_chars.index

Hello,

I tried the following str ="ÄÄa__" assert str.mb_chars.is_utf8? assert str.is_utf8?

# this is logical assert_equal 4, str.index("a", 4)

# this is not logical. shouldn't this be nil !? assert_equal 2, str.mb_chars.index("a", 4)

Why is the last line failing? And how could I fix this?

Regards, Peter.

PS: I am using ruby 1.8.6 on linux with rails 2.2.2

I found a workaround for this: last = str.mb_chars.length - 1 str.mb_chars[from_index, last].index("a") + from_index