西山和広です。 At Thu, 17 Jan 2008 12:05:38 +0900, 水 wrote: > > #!c://ruby/bin/ruby -Ks > > line = "名物|柿羊羹《かきようかん》の" > line.gsub!(/|([亜-煕]*《)([ぁ-ん]*)(》)/,'\2') > > 希望する出力は > > 「名物かきようかんの」 > > なのですが、上記変換を行うとマッチ部分が見つからず、 > > 「名物|柿羊羹《かきようかん》の」 > > のまま出力されてしまいます。 羹(0xE3BB)が[亜-煕](0x889F-0xE086)の範囲外だからのようです。 厳密にマッチさせる必要がなければ line.gsub!(/|.+?《(.+?)》/, '\1') のようにゆるいマッチにしてしまうのも一つの手だと思います。 -- |ZnZ(ゼット エヌ ゼット) |西山和広(Kazuhiro NISHIYAMA)