Issue #6380 has been reported by 5.5 (5 5). ---------------------------------------- Bug #6380: 正規表現検索で大文字/小文字の対応がおかしいものがある https://bugs.ruby-lang.org/issues/6380 Author: 5.5 (5 5) Status: Open Priority: Normal Assignee: Category: M17N Target version: 1.9.3 ruby -v: ruby 1.9.3p202 (2012-04-27 revision 35484) [x86_64-darwin10.8.0] =begin Unicode のコードチャート * http://www.unicode.org/charts/PDF/U0180.pdf * http://www.unicode.org/charts/PDF/U0250.pdf によれば, * U+0241 LATIN CAPITAL LETTER GLOTTAL STOP * U+0242 LATIN SMALL LETTER GLOTTAL STOP が大文字/小文字の関係にあり, * U+0294 LATIN LETTER GLOTTAL STOP は「caseless」です。しかし,正規表現検索で i オプションを使うと,U+0241 と U+0294 が大文字/小文字の関係にあるかのような動作になります。 a="\u{241}" # => "" b="\u{242}" # => "" c="\u{294}" # => "" str=a+b+c puts str.gsub(/#{a}/i, "-") # => nil puts str.gsub(/#{b}/i, "-") # => nil puts str.gsub(/#{c}/i, "-") # => nil # >> -- # >> - # >> -- =end -- http://bugs.ruby-lang.org/