るりまサーチ

最速Rubyリファレンスマニュアル検索!
324件ヒット [101-200件を表示] (0.088秒)

別のキーワード

  1. string []=
  2. string slice
  3. string slice!
  4. string []
  5. string gsub!

ライブラリ

キーワード

検索結果

<< < 1 2 3 4 > >>

StringScanner#inspect -> String (9270.0)

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

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

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

* スキャナポインタの現在位置。
* スキャン対象の文字列の長さ。
* スキャンポインタの前後にある文字。...
...上記実行例の @ がスキャンポインタを表します。

//emlist[例][ruby]{
require '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#check(regexp) -> String | nil (9222.0)

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

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

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

//emlist[例][ruby]{
require 'strscan'

s = StringScanner.new('test string')
s.check(/\w+/) # => "test"
s.pos # => 0
s.matched # => "test"...

StringScanner#check_until(regexp) -> String | nil (9222.0)

regexp が一致するまで文字列をスキャンします。 マッチに成功したらスキャン開始位置からマッチ部分の末尾までの部分文字列を返します。 マッチに失敗したら nil を返します。

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

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

//emlist[例][ruby]{
require 'strscan'

s = StringScanner.new('test string')
s.check_until(/str/) # => "test str"
s.matched # => "str"
s.pos...

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

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

...は変更されません。

selfを返します。

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

//emlist[例][ruby]{
require 'strscan'

s = StringScanner.new('test') # => #<StringScanner 0/4 @ "test">
s.scan(/\w(\w*)/) # => "test"
s[0]...
...=> "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]{
require 'strscan'

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

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

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

...は変更されません。

selfを返します。

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

//emlist[例][ruby]{
require 'strscan'

s = StringScanner.new('test') # => #<StringScanner 0/4 @ "test">
s.scan(/\w(\w*)/) # => "test"
s[0]...
...=> "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]{
require 'strscan'

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

絞り込み条件を変える

StringScanner#search_full(regexp, s, f) -> object (9074.0)

regexp で指定された正規表現とマッチするまで文字列をスキャンします。

...true) は StringScanner#scan_until と同等。
* search_full(regexp, true, false) は StringScanner#skip_until と同等。
* search_full(regexp, false, true) は StringScanner#check_until と同等。
* search_full(regexp, false, false) は StringScanner#exist? と同等。

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

@
param s true ならばスキャンポインタを進めます。
false ならばスキャンポインタを進めません。

@
param f true ならばマッチした部分文字列を返します。
false ならばマッ...
...scan'

s = StringScanner.new('test string')
p s.search_full(/t/, true, true) #=> "t"
p s.search_full(/str/, false, true) #=> "est str"
p s.search_full(/string/, true, true) #=> "est string"
//}


@
see StringScanner#scan_until StringScanner#skip_until StringScanner#check_until StringScan...

StringScanner#pointer=(n) (9056.0)

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

...トします。

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

@
return n を返...
...e '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 s.scan(/\w+/...

StringScanner#pos=(n) (9056.0)

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

...トします。

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

@
return n を返...
...e '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 s.scan(/\w+/...

StringScanner#clear -> self (9038.0)

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

...文字列末尾後まで進め、マッチ記録を捨てます。

@
return self を返します。

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

//emlist[例][ruby]{
require '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 を使ってください。...
<< < 1 2 3 4 > >>