このマニュアルは既にメンテナンスが終了したバージョンの Ruby を対象としています。 最新版のマニュアルへ

Ruby 1.8.7 リファレンスマニュアル

module function Kernel.#sub

sub(pattern, replace) -> String[permalink][rdoc]
sub!(pattern, replace) -> String
sub(pattern) {|matched| ... } -> String
sub!(pattern) {|matched| ... } -> String

組み込み変数 $_ の指す文字列内で pattern にマッチする最初の部分を replace に置き換えます。$_ を返します。

$_.sub, $_.sub! とほぼ同じです。

暗号的になりすぎるきらいがあるため、このメソッドの使用は推奨されていません。今後はより明示的な $_.sub, $_.sub! を使ってください。

$_.sub とこのメソッド sub は以下の点で違いがあります。

  • sub は $_ の値をコピーして、コピーの方を更新し、 $_ に再代入します。
[PARAM] pattern:
置き換える文字列のパターンを表す文字列か正規表現。文字列を指定した場合は全く同じ文字列にだけマッチする
[PARAM] replace:
pattern で指定した文字列と置き換える文字列

[SEE_ALSO] String#sub,$_