るりまサーチ

最速Rubyリファレンスマニュアル検索!
576件ヒット [1-100件を表示] (0.088秒)
トップページ > クエリ:r[x] > クラス:StringScanner[x]

別のキーワード

  1. _builtin to_r
  2. open3 pipeline_r
  3. matrix elements_to_r
  4. fileutils rm_r
  5. fileutils cp_r

ライブラリ

キーワード

検索結果

<< 1 2 3 ... > >>

StringScanner#string -> String (9201.0)

スキャン対象にしている文字列を返します。

...][ruby]{
r
equire 'strscan'

s = StringScanner.new('test string')
s.string # => "test string"
//}

返り値は freeze されていません。

//emlist[例][ruby]{
r
equire 'strscan'

s = StringScanner.new('test string')
s.string.frozen? # => false
//}

なお、このメソッドは StringScanner.n...
...様に依存したコードを書かないようにしましょう。

//emlist[例][ruby]{
r
equire 'strscan'

str = 'test string'
s = StringScanner.new(str)
s.string == str # => true
s.string.eql?(str) # => true (将来は false になる可能性がある)
//}

また、返り値の文字列に...
...ないでください。

//emlist[例][ruby]{
r
equire 'strscan'

str = 'test string'
s = StringScanner.new(str)
s.string.replace("0123")
s.scan(/\w+/) # => "0123" (将来は "test" が返る可能性あり)
str # => "0123" (将来は "test string" が返る可能性あり)
//}...

StringScanner#string=(str) (9101.0)

スキャン対象の文字列を str に変更して、マッチ記録を捨てます。

...str に変更して、マッチ記録を捨てます。

@param str スキャン対象の文字列を str に変更して、マッチ記録を捨てます。

@return str を返します。

//emlist[例][ruby]{
r
equire 'strscan'

str = '0123'
s = StringScanner.new('test string')
s.string = str...

StringScanner#pointer -> Integer (6201.0)

現在のスキャンポインタのインデックスを返します。

...デックスを返します。

//emlist[例][ruby]{
r
equire 'strscan'

s = StringScanner.new('test string')
s.pos # => 0
s.scan(/\w+/) # => "test"
s.pos # => 4
s.scan(/\w+/) # => nil
s.pos # => 4
s.scan(/\s+/) # => " "
s.pos # => 5
//}

@see StringScanner#charpos...

StringScanner#charpos -> Integer (6101.0)

現在のスキャンポインタのインデックスを文字単位で返します。

...キャンポインタのインデックスを文字単位で返します。

//emlist[例][ruby]{
r
equire 'strscan'

s = StringScanner.new("abcädeföghi")
s.charpos # => 0
s.scan_until(/ä/) # => "abcä"
s.pos # => 5
s.charpos # => 4
//}

@see StringScanner#pos...

StringScanner#clear -> self (6101.0)

スキャンポインタを文字列末尾後まで進め、マッチ記録を捨てます。

...捨てます。

@return self を返します。

pos = self.string.size と同じ動作です。

//emlist[例][ruby]{
r
equire 'strscan'

s = StringScanner.new('test string')
s.scan(/\w+/) # => "test"
s.matched # => "test"
s.pos # => 4
s[0] # => "test"
s.terminate
s.matched...
...# => nil
s[0] # => nil
s.pos # => 11
//}

StringScanner
#clear は将来のバージョンで削除される予定です。
代わりに StringScanner#terminate を使ってください。...

絞り込み条件を変える

StringScanner#pointer=(n) (6101.0)

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

...ます。

@param n 整数で、バイト単位で指定します。
負数を指定すると文字列の末尾からのオフセットとして扱います。
@raise RangeError マッチ対象の文字列の長さを超える値を指定すると発生します。

@return n を返しま...
...//emlist[例][ruby]{
r
equire '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
r
escue RangeError => err
puts err #=> index out of range
end
p s.pos =...
...-4 # => -4
p s.scan(/\w+/) # => "ring"
//}...

StringScanner#pre_match -> String | nil (6101.0)

前回マッチを行った文字列のうち、マッチしたところよりも前の 部分文字列を返します。前回のマッチが失敗していると常に nil を 返します。

...

//emlist[例][ruby]{
r
equire 'strscan'

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

StringScanner#reset -> self (6101.0)

スキャンポインタを文字列の先頭 (インデックス 0) に戻し、 マッチ記録を捨てます。

...ます。

pos = 0と同じ動作です。

@return self を返します。

//emlist[例][ruby]{
r
equire 'strscan'

s = StringScanner.new('test string')
s.scan(/\w+/) # => "test"
s.matched # => "test"
s.pos # => 4
s[0] # => "test"
s.reset
s.matched # => nil
s[0] #...

StringScanner#rest -> String (6101.0)

文字列の残り (rest) を返します。 具体的には、スキャンポインタが指す位置からの文字列を返します。

...(rest) を返します。
具体的には、スキャンポインタが指す位置からの文字列を返します。

スキャンポインタが文字列の末尾を指していたら空文字列 ("") を返します。

//emlist[例][ruby]{
r
equire 'strscan'

s = StringScanner.new('test string...
...')
s.rest # => "test string"
s.scan(/\w+/) # => "test"
s.rest # => " string"
s.scan(/\s+/) # => " "
s.rest # => "string"
s.scan(/\w+/) # => "string"
s.rest # => ""
//}...
<< 1 2 3 ... > >>