From: Greg Willits Date: 2007-12-04T06:07:55+09:00 Subject: Re: Unicode in Regex >> Basically, \xE4 is counted as the byte value 0xE4, not the unicode >> character U+00E4. And in a range expression, each escaped value is taken >> as one character within the range. Which results in not-immediately >> obvious situations: >> >> >> 'aébvHögtåwHÅFuG'.scan(/[\303\251]/u) >> => [] >> >> 'aébvHögtåwHÅFuG'.scan(/[#{"\303\251"}]/u) >> => ["é"] OK, one thing I'm still confused about -- when I look up é in any table, it's DEC is 233 which converted to OCT is 351, yet you're using 251 (and indeed it seems like reducing the OCTs I come up with by 100 is what actually works). Where is this 100 difference coming from? -- gw -- Posted via http://www.ruby-forum.com/.