るりまサーチ

最速Rubyリファレンスマニュアル検索!
60件ヒット [1-60件を表示] (0.089秒)
トップページ > 種類:インスタンスメソッド[x] > クエリ:end[x] > クエリ:begin[x] > クラス:StringScanner[x]

別のキーワード

  1. _builtin end
  2. ripper end_seen?
  3. _builtin exclude_end?
  4. _builtin end_with?
  5. range end

ライブラリ

キーワード

検索結果

StringScanner#unscan -> self (38.0)

スキャンポインタを前回のマッチの前の位置に戻します。

...'strscan'

s = StringScanner.new('test string')
s.scan(/\w+/) # => "test"
s.unscan
s.scan(/\w+/) # => "test"
//}


@return selfを返します。

このメソッドでポインタを戻せるのは 1 回分だけです。
2 回分以上戻そうとしたときは例外 StringScanner::Error が発...
...た、まだマッチを一度も行っていないときや、
前回のマッチが失敗していたときも例外 StringScanner::Error が発生します。

@raise StringScanner::Error 2 回分以上戻そうとした時や、
まだマッチを一度も行ってい...
...scan'

s = StringScanner.new('test string')
begin

# マッチを一度も行っていないので、例外が発生する。
s.unscan
rescue StringScanner::Error => err
puts err
# 出力例
#=> unscan failed: previous match had failed
end

p s.scan(/\w+/) # => "test"
s.unscan
begin

# 二...

StringScanner#peek(bytes) -> String (14.0)

スキャンポインタから長さ bytes バイト分だけ文字列を返します。

...ire 'strscan'
s = StringScanner.new('test string')
s.peek(4) # => "test"
//}

また、このメソッドを実行してもスキャンポインタは移動しません。

StringScanner
#peep は将来のバージョンでは削除される予定です。
代わりに StringScanner#peek を使っ...
...list[例][ruby]{
require 'strscan'

s = StringScanner.new('test string')
p s.peek(4) # => "test"
p s.peek(20) # => "test string"
p s.peek(0) # => ""
begin

s.peek(-1)
rescue ArgumentError => err
puts err # negative string size (or size too big)
end

p s.scan(/\w+/) # => "test"
p s.scan(...
....scan(/\w+/) # => "string"
p s.peek(4) # => ""

# このメソッドを実行してもスキャンポインタは移動しません。

s = StringScanner.new('test string')
p s.peek(4) # => "test"
p s.peek(4) # => "test"
p s.scan(/\w+/) # => "test"
p s.peek(4) # => " str"
p s.peek(4)...

StringScanner#peep(bytes) -> String (14.0)

スキャンポインタから長さ bytes バイト分だけ文字列を返します。

...ire 'strscan'
s = StringScanner.new('test string')
s.peek(4) # => "test"
//}

また、このメソッドを実行してもスキャンポインタは移動しません。

StringScanner
#peep は将来のバージョンでは削除される予定です。
代わりに StringScanner#peek を使っ...
...list[例][ruby]{
require 'strscan'

s = StringScanner.new('test string')
p s.peek(4) # => "test"
p s.peek(20) # => "test string"
p s.peek(0) # => ""
begin

s.peek(-1)
rescue ArgumentError => err
puts err # negative string size (or size too big)
end

p s.scan(/\w+/) # => "test"
p s.scan(...
....scan(/\w+/) # => "string"
p s.peek(4) # => ""

# このメソッドを実行してもスキャンポインタは移動しません。

s = StringScanner.new('test string')
p s.peek(4) # => "test"
p s.peek(4) # => "test"
p s.scan(/\w+/) # => "test"
p s.peek(4) # => " str"
p s.peek(4)...

StringScanner#pointer=(n) (14.0)

スキャンポインタのインデックスを n にセットします。

...uby]{
require 'strscan'

s = StringScanner.new('test string')
p s.scan(/\w+/) # => "test"
p s.pos = 1 # => 1
p s.scan(/\w+/) # => "est"
p s.pos = 7 # => 7
p s.scan(/\w+/) # => "ring"

begin

s.pos = 20
rescue RangeError => err
puts err #=> index out of range
end

p s.pos = -4 # => -4
p...

StringScanner#pos=(n) (14.0)

スキャンポインタのインデックスを n にセットします。

...uby]{
require 'strscan'

s = StringScanner.new('test string')
p s.scan(/\w+/) # => "test"
p s.pos = 1 # => 1
p s.scan(/\w+/) # => "est"
p s.pos = 7 # => 7
p s.scan(/\w+/) # => "ring"

begin

s.pos = 20
rescue RangeError => err
puts err #=> index out of range
end

p s.pos = -4 # => -4
p...

絞り込み条件を変える