るりまサーチ

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

別のキーワード

  1. _builtin -
  2. open-uri open
  3. irb/input-method new
  4. irb/input-method gets
  5. matrix -

ライブラリ

クラス

キーワード

検索結果

<< 1 2 3 ... > >>

StringScanner (56226.0)

StringScanner は文字列スキャナクラスです。 簡単に高速なスキャナを記述できます。

...StringScanner は文字列スキャナクラスです。
簡単に高速なスキャナを記述できます。

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

s = StringScanner.new('This is an example string')
s.eos? #=> false

p s.scan(/\w+/) #=> "This"
p s.scan(/\w+/) #=> nil
p s.scan(/\s...
...+/) #=> nil
p s.scan(/\w+/) #=> "is"
s.eos? #=> false

p s.scan(/\s+/) #=> " "
p s.scan(/\w+/) #=> "an"
p s.scan(/\s+/) #=> " "
p s.scan(/\w+/) #=> "example"
p s.scan(/\s+/) #=> " "
p s.scan(/\w+/) #=> "string"
s.eos? #=> true

p s.scan(/\s+/) #=> nil
p s.scan...
...n_until(/string/) #=> " string"
p s.scan_until(/\s+/) #=> nil
p s.scan_until(/string/) #=> nil
end

p "case1"
case1
p "case2"
case2
//}

スキャンポインタの位置は文字単位でなくバイト単位となります。

//emlist[例:][ruby]{
# 次の行以降の内容を EUC-JP...

StringScanner#string -> String (48798.0)

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

...list[例][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
//}

なお、このメソッドは StringS...
...ner.new に渡した
文字列をそのまま返しますが、この仕様が将来に渡って保証されるわけではありません。
この仕様に依存したコードを書かないようにしましょう。

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

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

また、返り値の文字列に対して破壊的な変更もできますが、
この操作がスキャン対象の文字列を変更することも保証されません。
この...

StringScanner#beginning_of_line? -> bool (48406.0)

スキャンポインタが行頭を指しているなら true を、 行頭以外を指しているなら false を返します。

...ら true を、
行頭以外を指しているなら false を返します。

行頭の定義は、文字列先頭かまたは \n の直後を指していることです。
文字列末尾は必ずしも行頭ではありません。

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

s = StringScanner.new("t...
...est\nstring")
s.bol? # => true
s.scan(/\w+/)
s.bol? # => false
s.scan(/\n/)
s.bol? # => true
s.scan(/\w+/)
s.bol? # => false
//}...

StringScanner#pointer -> Integer (39518.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#pointer=(n) (39224.0)

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

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

@return n を返します。

//emli...
...][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#bol? -> bool (39106.0)

スキャンポインタが行頭を指しているなら true を、 行頭以外を指しているなら false を返します。

...ら true を、
行頭以外を指しているなら false を返します。

行頭の定義は、文字列先頭かまたは \n の直後を指していることです。
文字列末尾は必ずしも行頭ではありません。

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

s = StringScanner.new("t...
...est\nstring")
s.bol? # => true
s.scan(/\w+/)
s.bol? # => false
s.scan(/\n/)
s.bol? # => true
s.scan(/\w+/)
s.bol? # => false
//}...

StringScanner#inspect -> String (36559.0)

StringScannerオブジェクトを表す文字列を返します。

...StringScannerオブジェクトを表す文字列を返します。

文字列にはクラス名の他、以下の情報が含まれます。

* スキャナポインタの現在位置。
* スキャン対象の文字列の長さ。
* スキャンポインタの前後にある文字。...
...//emlist[例][ruby]{
r
equire 'strscan'

s = StringScanner.new('test string')
s.inspect # => "#<StringScanner 0/11 @ \"test ...\">"
s.scan(/\w+/) # => "test"
s.inspect # => "#<StringScanner 4/11 \"test\" @ \" stri...\">"
s...
....scan(/\s+/) # => " "
s.inspect # => "#<StringScanner 5/11 \"test \" @ \"strin...\">"
s.scan(/\w+/) # => "string"
s.inspect # => "#<StringScanner fin>"
//}...

StringScanner::Version -> String (36429.0)

StringScanner クラスのバージョンを文字列で返します。 この文字列は Object#freeze されています。

...StringScanner クラスのバージョンを文字列で返します。
この文字列は Object#freeze されています。

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

StringScanner
::Version # => "0.7.0"
StringScanner
::Version.frozen? # => true
//}...

StringScanner#rest_size -> Integer (36340.0)

文字列の残りの長さを返します。 stringscanner.rest.size と同じです。

...
stringscanner
.rest.size と同じです。

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

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

s = StringScanner.new('test string')
p s.rest_size # => 11
p s.res...
...t.size # => 11
//}...

StringScanner#restsize -> Integer (36340.0)

文字列の残りの長さを返します。 stringscanner.rest.size と同じです。

...
stringscanner
.rest.size と同じです。

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

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

s = StringScanner.new('test string')
p s.rest_size # => 11
p s.res...
...t.size # => 11
//}...

絞り込み条件を変える

<< 1 2 3 ... > >>