sub, gsubメソッドで置換を行う
スポンサーリンク
スポンサーリンク
ライフスタイル関連のコンテンツ
お金 | 仕事 | 勉強 | プライベート | 健康 | 心
プログラミング関連のコンテンツ
C言語/C++入門 | Ruby入門 | Python入門 | プログラミング全般
お金 | 仕事 | 勉強 | プライベート | 健康 | 心
プログラミング関連のコンテンツ
C言語/C++入門 | Ruby入門 | Python入門 | プログラミング全般
subメソッド、gsubメソッドで、正規表現により文字列中のマッチした部分を、別の文字列へと置き換えることができます。
subは、最初にマッチした部分の置換、gsubは、すべてのマッチした部分を置き換えます。
スポンサーリンク
p "yyyabcabcabczzz".sub(/abc/, 'ABC') p "yyyabcabc\nabczzz".gsub(/abc/, 'ABC') puts "yyyabcabc\nabczzz".gsub(/abc/, 'ABC') p "abc xyz ABC \n def XYZ".gsub(/\s+/, ', ') str = "hello world !" s_str = str.sub(/[^\s]+/){|m| m.capitalize } p s_str str = "hello world !" s_str = str.gsub(/[^\s]+/){|m| m.capitalize } p s_str
sub, gsubは、ブロックを取ることができます。
マッチした部分が引数としてブロックに渡され、ブロック内で処理され返された値で、元のマッチした部分が置き換えられます。
実行結果。
"yyyABCabcabczzz" "yyyABCABC\nABCzzz" yyyABCABC ABCzzz "abc, xyz, ABC, def, XYZ" "Hello world !" "Hello World !"
subとgsubは、正規表現でよく使うメソッドですので、使い慣れておくと便利そうです。
破壊的なメソッドとして、それぞれsub!, gsub!があります。
スポンサーリンク
>> 次の記事 : scanメソッド
<< 前の記事 : 最短マッチ・貪欲じゃなくする
スポンサーリンク