Rubyのgsubメソッドについて

結論

「文字列の中で正規表現のパターンにマッチした部分をすべて指定の文字列に置換します。」

#シンプルにrをRに置き換える
str = "ruby"
puts str.gusb(/r/, "R") => "Ruby"

Google検索
「ruby gsubについて」
https://ref.xaio.jp/ruby/classes/string/gsub
https://www.sejuku.net/blog/60033
https://www.sejuku.net/blog/14685

うん、いままで自分が使ってきた認識とほぼ同じです。(ほぼ笑!?)

素人(私)サンプル

文字列を置き換えるメソッドがgsubです。

str = "おはようございます"
puts str.gsub(/おはようございます/, "こんにちは")
#=>"こんにちは"

正規表現のパターンマッチにそのまま文字列指定でもOKなわけです。「それも正規表現ですから!」ということです。

素人扱いではございますが、ただの文字列も正規表現として扱われます。はい、何言っているかわかりませんね。「日本人だから国語って必要ない」っていうのが私が小学生の頃の決まり文句でした。国語って必要だわ。ボキャブラリーと言いまわし?朗読劇を見に行ったときに言葉がこんなふうに扱えられたら、大人だなって感じました。

ブロックやハッシュを使った置換

そんなこともできるようです。飛ばします!
https://ref.xaio.jp/ruby/classes/string/gsub

リファレンスを読んでゆっくりだったら私でも出来ますし、理解はできます。すごーくゆっくりですけどね。が、しかし今回は無しにさせてください!(結構葛藤した上、その場しのぎの結論です。)
私はプログラマーではございません。Rubyが自分の思っているように動いてくれればいいと思っています。冗長?無駄?気にしません。優先順位ってのがあって、なるべく覚えられること、またはすぐにアクセスできることを重視し、プログラムがローカルで動くことを優先したいです。もちろんコードによってリソースの消費も違うでしょう。でも私、素人エセプログラマーが書くコードはたかが知れていて、自分のパソコンで作業を効率化、自動化したいだけです。(プロの方~、申し訳ございません泣。)
ソフトウェアなんて呼べる代物ではございません。

subメソッドってのもあります。

これは最初のパターンマッチだけ置換します。

破壊的メソッド「gsub!」について

「破壊的」に関して、こちらの「mapメソッド」で解説しております。
https://okenigou.com/?p=715

スポンサーリンク
投稿記事
スポンサーリンク
OKE2GOU