まつもと ゆきひろです

In message "[ruby-list:37892] subのパターンと後方参照"
    on 03/07/20, Shigeaki Kinoshita <QZT05560 / nifty.ne.jp> writes:

|edate = jdate.sub(/([日月火水木金土])/, WDay[$1])
|p edate 
|
|とすると、
|
|in `sub': failed to convert nil into String (TypeError)
|
|とエラーになってしまいます。
|sub() のパターンに書いた正規表現の後方参照ってできないのでしょうか?

$1などが評価されるのは引数ですからsubを実行する前です。です
から、subの実行によって決まる$1はまだ反映されていません。置
換対象が文字列リテラルであれば '\1' などで参照できますが、そ
うでない場合にはブロックを使ってください。

                                まつもと ゆきひろ /:|)