From: hmorita Date: 2003-03-20T18:42:52+09:00 Subject: [ruby-list:37376] Re: 正規表現の位置指定の使い方 In "[ruby-list:37371] Re: 正規表現の位置指定の使い方" on Thu, 20 Mar 2003 16:59:15 +0900 "Tatsuaki Nagai" wrote: | gsubであれば以下のように、置き換えない部分を( )でくくって残すというのは | どうでしょうか。 | print str.gsub(/([^a])Z/,'\1Y') 先日、同じようなことでつまずいて、原先生に教えてもらいました。 p "ZaaZbaZabZccZ".gsub(/([^a])Z/, '\1Y') #=> "ZaaZbaZabYccY" p "ZaaZbaZabZccZ".gsub(/([^a]|\A)Z/, '\1Y') #=> "YaaZbaZabYccY" p "ZaaZbaZabZccZ".gsub(/([^a]|[^a]a|\A)Z/, '\1Y') #=> "YaaZbaYabYccY" もっとよい方法があれば教えてください。 ---- 森田尚