Rubyでの文字列の連結と補間(例付き)
複数の文字列を組み合わせるのは、Rubyで頻繁に行う必要があることです。
しかし、どうすればそれができますか?
ええと…
2つの方法があります :
- Ruby文字列の連結
- Ruby文字列補間
連結は次のようになります :
a = "Nice to meet you" b = ", " c = "do you like blueberries?" a + b + c # "Nice to meet you, do you like blueberries?"
+
を使用できます 文字列を別の文字列に追加する演算子。
この場合、a + b + c
、新しい文字列を作成します。
ところで、これを機能させるために変数を使用する必要はありません。
例 :
puts "I like" + " " + "chocolate" # I like chocolate
別のオプションは、+=
を使用することです オペレーター。
例 :
a = "" a += "test" a += "test" a += "test" a # "testtesttest"
空の文字列から始めて、それに追加することでより大きな文字列を作成します。
しかし、これには1つの問題があります…
とても遅いです!
次に解決策が登場します。
ルビーコンキャットメソッドの例
Rubyのconcat
を使用できます 文字列を効率的にマージする方法。
方法は次のとおりです :
str = "" str.concat("a") str.concat("a") str # "aa"
文字列str
が変更されるため、高速です 、新しいものを作成する代わりに。
しかし、これは+=
ほど良くはありません …
別の方法はありますか?
はい!
<<
を使用できます concat
のエイリアスであるメソッド 。
注 :Ruby 2.4以降、
concat
との小さな違いがあります<<
を使用して、複数の引数を渡すことができます 一度に渡すことができるのは1つだけです。
例 :
str = "" str << "a" str << "a"
これもできます :
str = "" str << "a" << "a"
残っている問題は1つだけです。
文字列を変数と組み合わせたいが、変数の1つが文字列ではない場合、予期しない結果が得られます。
ご覧ください :
"" + 1 # TypeError: no implicit conversion of Fixnum into String "" << 1 # "\x01"
解決策は何ですか?
to_sメソッドを使用して、すべての新しいオブジェクトを文字列に変換します。
このように :
"" + 1.to_s
もちろん、これは醜い速度になるので、使用できる別のツールがあります。
Ruby文字列補間の使用方法
変数を文字列に補間またはマージすることは、強力な手法です。
文字列を「テンプレート化」することができます。
ここに例があります :
age = 33 name = "Jesus" "Hello, my name is #{name} & I'm #{age} years old."
任意のname
をプラグインできます &age
文字列の前に変数として設定します。
最良の部分は?
Rubyがこれらの値を文字列に変換します。
したがって、to_s
を呼び出す必要はありません !
良いもの。
文字列の追加
文字列を組み合わせる別の方法があります。
変数と小さい文字列を「文字列補間」で新しいものに結合する代わりに。
または、末尾に<<
を追加します &concat
。
prepend
することもできます !
例 :
str = "" str.prepend("1") str.prepend("2") str.prepend("3") # "321"
append
があるとお考えの場合 方法はありません。
アレイの場合のみ。
概要
Rubyでの文字列の連結、追加、追加、補間について学習しました。これにより、複数の文字列を組み合わせることができます。
役に立ったと思ったら、この記事を共有してください🙂
読んでくれてありがとう。
-
Ruby Mapメソッドの使用方法(例付き)
Mapは、配列、ハッシュ、範囲で使用できるRubyメソッドです。 マップの主な用途は、データを変換することです。 例 : 文字列の配列が与えられた場合、すべての文字列に目を通し、すべての文字を大文字にすることができます。 または、Userのリストがある場合 オブジェクト… 変換できます 対応するメールアドレス、電話番号、またはその他の属性のリストにそれらを追加します Userで定義 クラス。 これを行う方法を正確に見てみましょう! ルビーマップ構文 マップの構文は次のようになります: array = [a, b, c] array.map { |string| string.
-
Rubyでファイルを読み書きする方法(例付き)
今日は、Rubyでファイルを読み書きして、コンテンツを抽出し、新しいファイルを作成し、必要な情報を見つける方法を学びます。 これから説明します : コンテンツ 1Rubyでファイルを読み取る方法 2Rubyでファイルに書き込む方法 3つのRubyファイルメソッド 4つのディレクトリ操作 5FileUtilsモジュールの使用方法 6まとめ 6.1関連 やってみましょう! Rubyでファイルを読み取る方法 次のようにRubyでファイルを読み取ることができます: ファイルを開く 、open メソッド。 ファイルを読む 、ファイル全体、行ごと、または特定のバイト数。 ファイルを