るりまサーチ

最速Rubyリファレンスマニュアル検索!
516件ヒット [201-300件を表示] (0.148秒)

別のキーワード

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

ライブラリ

キーワード

検索結果

<< < 1 2 3 4 5 ... > >>

StringScanner#pointer=(n) (9138.0)

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

...ます。

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

@return n を返しま...
...][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#matched_size -> Integer | nil (6232.0)

前回マッチした部分文字列の長さを返します。 前回マッチに失敗していたら nil を返します。

...ruby]{
r
equire 'strscan'

def run(encode)
utf8 = "\u{308B 3073 3044}" # るびい
s = StringScanner.new(utf8.encode(encode))
s.scan(/#{"\u{308B}".encode(encode)}/)
s.matched_size
end

p run("UTF-8") #=> 3
p run("EUC-JP") #=> 2
p run("Shift_Jis") #=> 2

//}

//emlist[例][ruby]{
r
equir...
...e 'strscan'

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

StringScanner#post_match -> String | nil (6232.0)

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

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

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

StringScanner#[](nth) -> String | nil (6226.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]...
...# => "st"
s.scan(/\w+/) # => nil
s[0] # => nil
s[1] # => nil
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#peek(bytes) -> String (6226.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 # neg...

絞り込み条件を変える

StringScanner#peep(bytes) -> String (6226.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 # neg...

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

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

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

selfを返します。

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

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

s = StringScanner.new('test') # => #<StringScanner 0/4 @ "test">
s.scan...
..."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 (6220.0)

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

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

selfを返します。

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

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

s = StringScanner.new('test') # => #<StringScanner 0/4 @ "test">
s.scan...
..."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 (6220.0)

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

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

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

* スキャナポインタの現在位置。
* スキャン対象の文字列の長さ。
* スキャンポインタの前後にある文字。...
...[例][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>"
//}...
<< < 1 2 3 4 5 ... > >>