るりまサーチ

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

別のキーワード

  1. rbconfig ruby
  2. fiddle ruby_free
  3. fiddle build_ruby_platform
  4. rake ruby
  5. rubygems/defaults ruby_engine

ライブラリ

キーワード

検索結果

<< < 1 2 3 4 > >>

StringScanner#<<(str) -> self (3156.0)

操作対象の文字列に対し str を破壊的に連結します。 マッチ記録は変更されません。

...し str を破壊的に連結します。
マッチ記録は変更されません。

selfを返します。

@
param str 操作対象の文字列に対し str を破壊的に連結します。

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

s = StringScanner.new('test') # => #<StringScanner 0/4 @ "test">
s...
..."est"
s << ' string' # => #<StringScanner 4/11 "test" @ " stri...">
s[0] # => "test"
s[1] # => "est"
s.scan(/\s+/) # => " "
s.scan(/\w+/) # => "string"
//}

この操作は StringScanner.new に渡し...
...た文字列にも影響することがあります。

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

str = 'test'
s = StringScanner.new(str) # => #<StringScanner 0/4 @ "test">
s << ' string' # => #<StringScanner 0/11 @ "test ...">
str # => "test string"
//}...

StringScanner#concat(str) -> self (3156.0)

操作対象の文字列に対し str を破壊的に連結します。 マッチ記録は変更されません。

...し str を破壊的に連結します。
マッチ記録は変更されません。

selfを返します。

@
param str 操作対象の文字列に対し str を破壊的に連結します。

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

s = StringScanner.new('test') # => #<StringScanner 0/4 @ "test">
s...
..."est"
s << ' string' # => #<StringScanner 4/11 "test" @ " stri...">
s[0] # => "test"
s[1] # => "est"
s.scan(/\s+/) # => " "
s.scan(/\w+/) # => "string"
//}

この操作は StringScanner.new に渡し...
...た文字列にも影響することがあります。

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

str = 'test'
s = StringScanner.new(str) # => #<StringScanner 0/4 @ "test">
s << ' string' # => #<StringScanner 0/11 @ "test ...">
str # => "test string"
//}...

StringScanner#inspect -> String (3138.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#peek(bytes) -> String (3138.0)

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

...][ruby]{
r
equire 'strscan'
s = StringScanner.new('test string')
s.peek(4) # => "test"
//}

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

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

@
param bytes 0 以上の整数を指定します。
ただし、スキャン対象の文字列の長さを超える分は無視されます。
bytes が 0 のとき、またはスキャンポインタが文字列の末尾を
...
...

@
raise ArgumentError bytes に負数を与えると発生します。

//emlist[例][ruby]{
r
equire '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)
r
escue ArgumentError => err
puts err #...

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

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

...][ruby]{
r
equire 'strscan'
s = StringScanner.new('test string')
s.peek(4) # => "test"
//}

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

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

@
param bytes 0 以上の整数を指定します。
ただし、スキャン対象の文字列の長さを超える分は無視されます。
bytes が 0 のとき、またはスキャンポインタが文字列の末尾を
...
...

@
raise ArgumentError bytes に負数を与えると発生します。

//emlist[例][ruby]{
r
equire '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)
r
escue ArgumentError => err
puts err #...

絞り込み条件を変える

StringScanner#scan_full(regexp, s, f) -> object (3138.0)

スキャンポインタの位置から regexp と文字列のマッチを試します。

...スキャンポインタの位置から regexp と文字列のマッチを試します。

マッチに成功すると、s と f の値によって以下のように動作します。

* s が true ならばスキャンポインタを進めます。
* s が false ならばスキャンポイ...
...ンタを進めません。
* f が true ならばマッチした部分文字列を返します。
* f が false ならばマッチした部分文字列の長さを返します。

マッチに失敗すると s や f に関係なく nil を返します。

このメソッドは s と f の...
..._full(regexp, true, true) は StringScanner#scan と同等。
* scan_full(regexp, true, false) は StringScanner#skip と同等。
* scan_full(regexp, false, true) は StringScanner#check と同等。
* scan_full(regexp, false, false) は StringScanner#match? と同等。

@
param regexp...

StringScanner#match?(regexp) -> Integer | nil (3132.0)

スキャンポインタの地点だけで regexp と文字列のマッチを試します。 マッチしたら、スキャンポインタは進めずにマッチした 部分文字列の長さを返します。マッチしなかったら nil を 返します。

...スキャンポインタの地点だけで regexp と文字列のマッチを試します。
マッチしたら、スキャンポインタは進めずにマッチした
部分文字列の長さを返します。マッチしなかったら nil を
返します。

マッチしたサイズは文字単...
...][ruby]{
r
equire 'strscan'
def case1(encode)
utf8 = "\u{308B 3073 3044}"
s = StringScanner.new(utf8.encode(encode))
s.match?(/#{"\u{308B}".encode(encode)}/)
end

p case1("EUC-JP") #=> 2
//}

@
param regexp マッチに用いる正規表現を指定します。

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

s = StringScanner.new('test string')
p s.match?(/\w+/) #=> 4
p s.match?(/\w+/) #=> 4
p s.match?(/\s+/) #=> nil
//}...

StringScanner#[](nth) -> String | nil (3120.0)

前回マッチした正規表現の nth 番目のかっこに対応する部分文字列を 返します。インデックス 0 はマッチした部分全体です。前回のマッチが 失敗していると常に nil を返します。

...敗していると常に nil を返します。

@
param nth 前回マッチした正規表現の nth 番目のかっこに対応する部分文字列を
返します。


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

s = StringScanner.new('test string')
s.scan(/\w(\w)(\w*)/) # => "test"
s[0]...
...il
s[2] # => nil
s.scan(/\s+/) # => " "
s[0] # => " "
s[1] # => nil
s[2] # => nil
s.scan(/\w(\w)(\w*)/) # => "string"
s[0] # => "string"
s[1] # => "t"
s[2] # => "ring"
//}...

StringScanner#check(regexp) -> String | nil (3120.0)

現在位置から regexp とのマッチを試みます。 マッチに成功したらマッチした部分文字列を返します。 マッチに失敗したら nil を返します。

...位置から regexp とのマッチを試みます。
マッチに成功したらマッチした部分文字列を返します。
マッチに失敗したら nil を返します。

このメソッドはマッチが成功してもスキャンポインタを進めません。

@
param regexp マッチ...
...に用いる正規表現を指定します。

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

s = StringScanner.new('test string')
s.check(/\w+/) # => "test"
s.pos # => 0
s.matched # => "test"
s.check(/\s+/) # => nil
s.matched # => nil
//}...
<< < 1 2 3 4 > >>