【Ruby3.x】String::chars()メソッドの使い方
charsメソッドの使い方について、初心者にもわかりやすく解説します。
作成日: 更新日:
基本的な使い方
charsメソッドは、RubyのStringクラスのオブジェクト(文字列)に対して使用され、文字列を構成する個々の文字を操作できるようにするメソッドです。このメソッドは、文字列のエンコーディングに基づいて、各文字を正しく識別し分解します。
具体的には、charsメソッドをブロックなしで呼び出した場合、文字列の各文字を順に生成するEnumeratorオブジェクトを返します。このEnumeratorを使うことで、例えばto_aメソッドで文字の配列に変換したり、eachメソッドで各文字を順に取り出して処理したりすることが可能です。
また、ブロックを伴って呼び出すこともできます。その際、文字列の各文字がブロックに一つずつ渡され、ブロック内で個別の文字に対する処理を実行できます。この場合のメソッドの戻り値は元の文字列そのものです。
このメソッドの大きな利点は、マルチバイト文字を含む文字列であっても、バイト単位ではなく、期待通りの文字単位で正確な処理が行える点です。例えば、日本語のような複数のバイトで構成される文字であっても、charsメソッドはそれを一つの「文字」として認識します。これにより、文字列の文字数を正確に数えたり、各文字に対して特定の処理を施したり、文字単位で検索や置換を行ったりするような、多様な場面で非常に有用です。
構文(syntax)
1"example".chars
引数(parameters)
引数なし
引数はありません
戻り値(return)
Array
文字列を構成する各文字を要素とする配列を返します。