[#46878] ML への投稿が blade.nagaokaut.ac.jp 以外にも — "ISHIKAWA Takayuki" <rechka_osaka@...>

石川と申します。この ML へ投稿した e-mail が

10 messages 2010/03/03

[#46909] gemを実行すると大量のワーニングメッセージ — garyo hosu <garyohosu@...>

こんにちはgaryoといいます。

16 messages 2010/03/16
[#46910] Re: [ruby-list:46909] gemを実行すると大量のワーニングメッセージ — Moru <lateau@...> 2010/03/16

モルと申します。

[#46983] Ruby Summer of Codeのアイデアとかメンターについて — Shintaro KAKUTANI <shintaro@...>

Asakusa.rbのかくたにです。

12 messages 2010/03/31

[ruby-list:46948] Re: 正規表現マニュアルの先読みの記載

From: "NARUSE, Yui" <naruse@...>
Date: 2010-03-24 17:12:21 UTC
List: ruby-list #46948
成瀬です。

(2010/03/19 22:45), 5.5 wrote:
> 5.5 です。
> 
> 先読みの実用(?)例として,こんなのは如何でしょうか。
> 数字に挟まれたハイフンを他の記号に変えたいとき,
> 
> "123-4-56".gsub(/(\d)-(\d)/){$1+"="+$2}
> 
> とやったのでは当然ダメですが,(?= ) を使って以下のように書けます。
> 
> "123-4-56".gsub(/(?=\d-\d)(\d)-/){$1+"="}
> "123-4-56".gsub(/(\d)-(?=\d)/){$1+"="}
> 
> また,(?=re1)re2 の形ではありませんが,[ruby-list:46268] のスレッ
> ドで,以下のコードが紹介されました。
> 
> "bananachips".scan(/(?=(ana.))/)
> 
> 幅のないところから文字列を取り出すのがとても面白いと思いました。

この手のだと、以前記事に書いた、数値をカンマで区切るなんていうのは、
先読みと戻り読みを同時に使う例ですね。

p "1000000".gsub(/(?<=[0-9])(?=(?:[0-9]{3})+\z)/, ',')
#=> "1,000,000"

http://gihyo.jp/dev/serial/01/ruby/0006?page=1

-- 
NARUSE, Yui  <naruse@airemix.jp>


In This Thread