StringScanner クラスリファレンス

クラスメソッド

new( str, dup = true )
新しい StringScanner オブジェクトを生成します。str はスキャン対 象の文字列です。dup が true の時は複製したうえで使います。またど ちらの場合でも StringScanner が保持する文字列はfreeze されます。
must_C_version このクラスが C バージョンの StringScanner でなければ例外 NotImplementedError を発生します。

メソッド

scan( regex )
ポインタの地点だけで正規表現 regex とマッチを行って、マッチした らスキャンポインタを進めたうえでその部分の文字列を返します。マッ チしなかったら nil を返します。
skip( regex )
ポインタの地点だけで正規表現 regex とマッチを行って、マッチした らスキャンポインタを進めたうえでマッチした文字列の長さを返します。 マッチしなかったら nil を返します。
match?( regex )
ポインタの地点だけで正規表現 regex とマッチを行って、マッチした らスキャンポインタは進めずにマッチした文字列の長さを返します。マッ チしなかったら nil を返します。
check( regex )
ポインタの地点だけで正規表現 regex とマッチを行って、マッチした らスキャンポインタは進めずにマッチした文字列を返します。マッチし なかったら nil を返します。
scan_until
先頭以外でもマッチを試す scan です。
skip_until
先頭以外でもマッチを試す skip です。
exist?
先頭以外でもマッチを試す match? です。
check_until
先頭以外でもマッチを試す check です。
getch
スキャンポインタから一文字を文字列として返し、ポインタを進めます。 マルチバイトを認識します。getbyte も参照。
getbyte
スキャンポインタから一バイトを文字列として返し、ポインタを進めます。
string, string=
スキャン対象にしている文字列それ自体です。freeze されています。 代入時にはポインタとマッチ記録はクリアされ、また代入した文字列は dup したうえ freeze されます。
peek( len )
ポインタから長さ len だけの文字列を返します。
empty?
ポインタが文字列の最後にあるとき真。
rest?
ポインタが文字列の最後になければ真。
rest
ポインタ以降の文字列を返します。
rest_size
ポインタ以降の文字列の長さを返します。
matched?
前回のマッチが成功したかどうかを真偽値で返します。
matched
前回マッチした部分の文字列を返します。 前回のマッチが失敗していると例外が発生します。
matched_size
前回マッチした部分の文字列の長さを返します。 前回のマッチが失敗していると例外が発生します。
self[n]
前回マッチした正規表現の n 番目のかっこに対応する部分文字列を返 します。インデックス 0 はマッチした部分全体です。前回のマッチが 失敗していると常に nil を返します。
reset
ポインタを最初(インデックス 0 )に戻し、マッチ記録を捨てます。
terminate
ポインタを文字列の最後まで進め、マッチ記録を捨てます。
unscan
ポインタを前回のマッチの前の位置に戻します。一回分以上は戻せません。 前回のマッチが失敗していると例外が発生します。

Copyright (c) 1999-2001 Minero Aoki <aamine@cd.xdsl.ne.jp>