Bruce.です。
Kazuhiro NISHIYAMA さんは書きました (2006/03/05 2:54):
> ちなみにRubyだとnilになるはずです。
>
> if /\d+(\.\d+)?/ =~ '123'
> p [$&, $1] #=> ["123", nil]
> end
置換結果の文字列を見てもなにも入ってこなかったので
空文字列になるものと判断していました。
>> にしても末尾の空白を何とかできんものか。
>> PerlやRubyなら消せたんだが。
>
> PerlやRubyではどうやったのでしょうか?
Perlならe修飾子で、Rubyならブロックを使って直接文字列に
置換するのでなくプログラム片を評価させてその結果で置き
換えるようにしただけです。
Pythonだと置換文字列の代わりに評価関数を置くという手が
あるのですが、今回それは禁じ手と見ましたので。lambdaが
高機能なら使ってたでしょうけど(笑)
--
木村浩一
I thought what I'd do was, I'd pretend I was one of those deaf-mutes.
mail kbk@...
web www.kt.rim.or.jp/~kbk/index.html#zakkicho
homepage3.nifty.com/farstar/