Skip to content

Archives

  • 2022年1月
  • 2021年12月
  • 2021年11月
  • 2021年10月
  • 2021年9月

Categories

  • カテゴリーなし
Trend RepositoryArticles and guides
Articles

3 Awesome Ways To Use Ruby’s Gsub Method

On 10月 4, 2021 by admin

Rubyのgsubメソッドについて説明します。

まず、このメソッドを使うには、文字列が必要です。

なぜかというと、文字列の一部を置き換えるためにgsubを使うからです。

実際には、

「gsub」の「sub」は「substitute」、「g」は「global」の略です。

Good.

If not you can borrow mine.

Here is it:

str = "white chocolate"

White を Dark に置き換えたいとします。

Here’s how:

str.gsub("white", "dark")

This is saying:

Given the string str, command it to replace ALL occurrence of the first word (white) with the second word (dark).

Wich means we get to eat much better chocolate.

Oh wait, it’s just string.

We can’t eat that.

Away…

Ruby の gsub method can do more much than simple substitution.

は、シンプルな置換以外にもたくさんのことができます。

いくつかの例を見てみましょう。

  • Replace Patterns With A Regular Expression
  • Advanced Gsub With Blocks
  • Replace Multiple Terms With A Hash
  • まとめ

Replace Patterns With A Regular Expression

単一の単語を置き換えることは問題ありません。

しかし、パターンを置き換えることができるとしたらどうでしょう。

たとえば、年、電子メール アドレス、電話番号などです。

以下はその例です。

"a1".gsub(/\d/, "2")# "a2"

最初の引数は正規表現で、ここでは紹介しきれません。

でもパターンマッチ言語です。

この場合、\dは「a1」の「1」など数字を探します。

"a1".gsub(/(\w)(\d)/, '')

このようにすることもできます。

"1a"

順番を入れ替えました!

これは、「キャプチャグループ」という機能を使っています。

グループは、1つ目のグループは、2つ目のグループはというように使います。

グループはカッコ付きで作成されます。

Advanced Gsub With Blocks

ブロックで gsub を使い始めると、本当に面白くなります。

なぜかというと、ブロック内で、何かをどう置き換えるかを決めるために、論理を使用することができるからです。

静的な値を使用する代わりに、

"dog".gsub(/\w+/) { |animal| animal == "dog" ? "cat" : "dog" }

たとえば、「1 つ以上の英数字」を意味する \w+ で動物を探します。

Then:

  • それが「犬」なら「猫」に置き換え
  • それ以外なら「犬」に置き換え

このような論理はgsubの第2パラメータという固定値では無理ですね。

Replace Multiple Terms With A Hash

置換のリストがある場合、ハッシュを使用することができます。

例えば次のようになります:

colors = { "B" => "blue", "G" => "green", "R" => "red"}

これは翻訳辞書のように動作し、キーはその値で置き換えられます:

"BBBGR".gsub(/\w/, colors)

その結果:

"bluebluebluegreenred"

第1引数がキーと一致するか確認します。

この場合、\w は個々の文字にマッチするので、”B” にマッチしてから “blue” に置換します。

まとめ

あなたは Ruby の gsub メソッドを学びましたね! 文字列の中の文字を置き換えたり、置換したりすることができる強力なメソッドです。

このメソッドには複数の使い方があります。

  • 無効な文字を削除する (第 2 引数を空の文字列にする)
  • プレースホルダーを置換する & 頭文字を完全な値にする
  • パターン & ロジックを使って文字を変える

次はあなたがこのメソッドを実践して、新しい知識を定着させる番です。

読んでくれてありがとう🙂

。

コメントを残す コメントをキャンセル

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

アーカイブ

  • 2022年1月
  • 2021年12月
  • 2021年11月
  • 2021年10月
  • 2021年9月

メタ情報

  • ログイン
  • 投稿フィード
  • コメントフィード
  • WordPress.org
  • DeutschDeutsch
  • NederlandsNederlands
  • SvenskaSvenska
  • DanskDansk
  • EspañolEspañol
  • FrançaisFrançais
  • PortuguêsPortuguês
  • ItalianoItaliano
  • RomânăRomână
  • PolskiPolski
  • ČeštinaČeština
  • MagyarMagyar
  • SuomiSuomi
  • 日本語日本語

Copyright Trend Repository 2022 | Theme by ThemeinProgress | Proudly powered by WordPress