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

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

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

作成日: 更新日:

基本的な使い方

restsizeメソッドは、StringScannerクラスのインスタンスが保持する文字列において、現在のスキャン位置から終端までの残りの文字数を取得するメソッドです。StringScannerは、与えられた文字列を効率的に走査(スキャン)するためのクラスであり、このrestsizeメソッドは、スキャン対象の文字列の残りの情報を数値で把握する際に利用されます。

このメソッドは、スキャン対象の文字列全体の文字数から、すでにスキャンした文字数(現在のスキャン位置)を差し引いた値を返します。具体的には、StringScanner#sizeメソッドが返す文字列全体の文字数から、StringScanner#posメソッドが返す現在のスキャン位置(文字単位)を引いた結果と等しい値です。例えば、「こんにちは、世界!」という文字列をStringScannerで扱い、「こんにちは、」までスキャンを進めた場合、restsizeメソッドは残りの「世界!」の文字数である3を返します。

restsizeメソッドを利用することで、文字列のどの程度がまだ未処理であるかを数値で簡単に確認できます。これは、特定の条件を満たすまで文字列をスキャンし続けたり、残りの文字列の長さに応じて処理を分岐させたりするようなプログラムを作成する際に非常に便利です。文字列の残りの部分の長さを効率的に知りたい場合に活用してください。

構文(syntax)

1require 'strscan'
2
3s = StringScanner.new('abcde')
4s.pos = 2
5size = s.restsize

引数(parameters)

引数なし

引数はありません

戻り値(return)

Integer

StringScannerオブジェクトで、スキャン対象の文字列のうち、まだスキャンされていない部分の長さを返します。

関連コンテンツ

関連プログラミング言語