「Ruby」参考情報 第4回 Rubyの文字列処理まとめ(比較、結合、分割、検索)として、「(1)Rubyの文字列比較」「(2)Rubyの文字列結合(文字列連結)」「(3)Rubyの文字列分割」「(4)Rubyの文字列検索」について紹介。

「Ruby」参考情報 第4回 Rubyの文字列処理まとめ(比較、結合、分割、検索)

「Ruby」参考情報 第4回 Rubyの文字列処理まとめ(比較、結合、分割、検索)として、「(1)Rubyの文字列比較」「(2)Rubyの文字列結合(文字列連結)」「(3)Rubyの文字列分割」「(4)Rubyの文字列検索」について紹介。

■関連する比較ページ

(1)Rubyの文字列比較

■「==」

同一文字列の判定には、「==」を使用します。

サンプルコード

if "dog" == "dog"
  print("同じです")
else
  print("違います")
end

結果

同じです

■「!=」

同一文字列ではないという判定は「!=」を使用します。

サンプルコード

if "dog" != "cat"
  print("違います")
else
  print("同じです")
end

結果

違います

(2)Rubyの文字列結合(文字列連結)

文字列結合には、いろいろな手段があります。以下のサンプルは、すべて同じ結果になります。

■サンプルコード

s = "abc" + "123"
s = "abc" << "123"
s = "abc".concat("123")

■結果

「s」には「abc123」がセットされます。

※「+」よりも「<<」のほうが高速に処理できます。

(3)Rubyの文字列分割

■「split」メソッド使用例(1)

文字列分割の主な手段として「split」メソッドがあります。区切り文字を指定すると、指定文字列で区切った文字列配列を返します。正規表現での文字列分割も可能です。

サンプルコード

a = "dog,cat,bird"
b = a.split(",")

結果

「b」には、["dog", "cat", "bird"]の文字列配列がセットされます。

■「split」メソッド使用例(2)

区切り文字として、""(空文字列)を指定すると、1文字ごとに分割されます。

サンプルコード

a = "abcde"
b = a.split("")

結果

「b」には、["a", "b", "c","d","e"]の文字列配列がセットされます。

(4)Rubyの文字列検索

■「index」メソッド

「index」メソッドは、検索対象文字(列)が何文字目に存在するのかを返します。

サンプルコード

s = "abcde"
pos = s.index("cd")

結果

posには、「2」がセットされます。

a開始位置は0、"b"開始位置は1、"c"開始位置が2 となります。

■「rindex」メソッド

「index」メソッドは左から検索しましたが、「rindex」メソッドは右から検索していきます。

サンプルコード

s = "abcdexcde"
pos = s.rindex("cd")

結果

posには、「6」がセットされます。

左側の"cd"ではなく、右側の"cd"の位置が返されます。

■「include」メソッド

「include」メソッドは、検索対象文字(列)が存在しているかどうかをtrue/falseで返します。

サンプルコード

s = "abcde"
check = s.include?("bc")

結果

checkには、「true」がセットされます。

Ruby最新TOPICS

【講演資料を公開】3/22「スマホアプリの開発プロセスについて~実は重要なサーバーサイドの開発と、Laravel(PHP) と Rails(Ruby)~」(2018年04月27日 10:04)

2018年03月22日(木)17:00~18:30 AP品川 9階 にて「スマホアプリの開発プロセスについて~実は重要なサーバーサイドの開発と、Laravel(PHP) と Rails(Ruby)~」と題したセミナーを開催しました。 当日は、会場の様子をWebで中継し 遠隔地等ご来場出来ない方にもご参加頂きました。お陰様で、盛況のうちに終了することができました。ありがとうございました。 講...

イベント情報

セミナー講演資料

無料資料プレゼント

2021/03/04 セキュリティDAYS Keyspider資料

講演資料を見るには、 プライバシーポリシーに同意して、送付先メールアドレスをご入力しご請求ください。

またご入力いただきました情報は、当該資料の作成・提供企業とも共有させていただき、当社及び各社のサービス、製品、セミナー、イベントなどのご案内に使用させていただきます。

本資料を見るには次の画面でアンケートに回答していただく必要があります。



セミナー講演資料公開中

ローコード/ノーコードのツール比較と内製化 ~ユーザー企業は、ノーコード/ローコードで内製化できるのか?~

リアルタイム性の高いIoTの課題とは?スマートシティを支えるMQTT ~IoTメッセージングプラットフォームを活用し、セキュリティ確保や通信到達保障を簡単に実現~

エンジニアにとって「情報発信」は重要なのか? ~テックピット DEVELOPERS RESKILLING CONFERENCE クロージングセッション~

  • オープソース書籍(サイド)
  • OSSNEWSに広告を掲載しませんか?

facebook

twitter