Webエンジニア向けプログラミング解説動画をYouTubeで配信中!
▶ チャンネル登録はこちら

【Ruby3.x】String::each_char()メソッドの使い方

each_charメソッドの使い方について、初心者にもわかりやすく解説します。

作成日: 更新日:

基本的な使い方

each_charメソッドは、RubyのStringクラスに属し、文字列を構成する各文字に対して繰り返し処理を実行するメソッドです。このメソッドは、文字列の先頭から順番に、ユニコード文字(いわゆる1文字)をひとつずつ取り出し、それに対して何らかの操作を行いたい場合に非常に有用です。

具体的には、each_charメソッドはブロック(一連の処理をまとめたもの)を受け取ることができます。ブロックが指定された場合、each_charメソッドは文字列から取り出した各文字をそのブロックに引数として渡し、ブロック内の処理を実行します。例えば、文字列内のすべての文字を検査したり、特定の条件に合致する文字だけを抽出したりする際に活用できます。

一方、ブロックが与えられなかった場合、each_charメソッドはEnumeratorオブジェクトを返します。このEnumeratorオブジェクトを利用することで、mapselectrejectといった他の繰り返し処理を行うメソッドと連携させることが可能になり、より柔軟かつ効率的に文字列の文字単位での操作を記述することができます。

このメソッドは、文字をバイト単位ではなく、人間が認識するユニコード文字単位で正確に扱うため、日本語のようなマルチバイト文字を含む文字列であっても、文字化けや意図しない分割を心配することなく安全に処理できる点が大きな特長です。文字列の文字ごとの詳細な分析や変換を行うための基本的ながら強力な手段として利用されます。

構文(syntax)

1"string".each_char { |char| # 各文字に対する処理 }

引数(parameters)

引数なし

引数はありません

戻り値(return)

String, Enumerator

each_charメソッドは、文字列の各文字を個別の要素として処理するためのイテレータを返します。これにより、文字列を文字ごとに順番に繰り返し処理できます。

関連コンテンツ

関連プログラミング言語