516件ヒット
[1-100件を表示]
(0.042秒)
別のキーワード
ライブラリ
- strscan (516)
キーワード
- << (12)
- [] (12)
-
beginning
_ of _ line? (12) - bol? (12)
- charpos (12)
- check (12)
-
check
_ until (12) - clear (12)
- concat (12)
- empty? (12)
- eos? (12)
- exist? (12)
-
get
_ byte (12) - getbyte (12)
- getch (12)
- inspect (12)
- match? (12)
- matched (12)
- matched? (12)
-
matched
_ size (12) - peek (12)
- peep (12)
- pointer (12)
- pointer= (12)
- pos (12)
- pos= (12)
-
post
_ match (12) -
pre
_ match (12) - reset (12)
- rest (12)
- rest? (12)
-
rest
_ size (12) - restsize (12)
-
scan
_ full (12) -
scan
_ until (12) -
search
_ full (12) - skip (12)
-
skip
_ until (12) - string (12)
- string= (12)
- terminate (12)
- unscan (12)
検索結果
先頭5件
-
StringScanner
# scan(regexp) -> String | nil (42145.0) -
スキャンポインタの地点だけで regexp と文字列のマッチを試します。 マッチしたら、スキャンポインタを進めて正規表現にマッチした 部分文字列を返します。マッチしなかったら nil を返します。
...す。
@param regexp マッチに用いる正規表現を指定します。
//emlist[例][ruby]{
require 'strscan'
s = StringScanner.new('test string')
p s.scan(/\w+/) #=> "test"
p s.scan(/\w+/) #=> nil
p s.scan(/\s+/) #=> " "
p s.scan(/\w+/) #=> "string"
p s.scan(/./) #=> nil
//}... -
StringScanner
# scan _ full(regexp , s , f) -> object (30229.0) -
スキャンポインタの位置から regexp と文字列のマッチを試します。
...ます。
* scan_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? と同......ます。
//emlist[例][ruby]{
require 'strscan'
s = StringScanner.new('test string')
p s.scan_full(/\w+/, true, true) #=> "test"
p s.scan_full(/\s+/, false, true) #=> " "
p s.scan_full(/\s+/, true, false) #=> 1
p s.scan_full(/\w+/, false, false) #=> 6
p s.scan_full(/\w+/, true, true)......#=> "string"
//}
@see StringScanner#scan StringScanner#skip StringScanner#check StringScanner#match?... -
StringScanner
# unscan -> self (30186.0) -
スキャンポインタを前回のマッチの前の位置に戻します。
...[ruby]{
require 'strscan'
s = StringScanner.new('test string')
s.scan(/\w+/) # => "test"
s.unscan
s.scan(/\w+/) # => "test"
//}
@return selfを返します。
このメソッドでポインタを戻せるのは 1 回分だけです。
2 回分以上戻そうとしたときは例外 StringScanner......た、まだマッチを一度も行っていないときや、
前回のマッチが失敗していたときも例外 StringScanner::Error が発生します。
@raise StringScanner::Error 2 回分以上戻そうとした時や、
まだマッチを一度も行ってい......emlist[例][ruby]{
require 'strscan'
s = StringScanner.new('test string')
begin
# マッチを一度も行っていないので、例外が発生する。
s.unscan
rescue StringScanner::Error => err
puts err
# 出力例
#=> unscan failed: previous match had failed
end
p s.scan(/\w+/) # =>... -
StringScanner
# scan _ until(regexp) -> String | nil (30121.0) -
regexp で指定された正規表現とマッチするまで文字列をスキャンします。 マッチに成功したらスキャンポインタを進めて、 スキャン開始位置からマッチ部分の末尾までの部分文字列を返します。 マッチに失敗したら nil を返します。
...たら nil を返します。
@param regexp マッチに用いる正規表現を指定します。
//emlist[例][ruby]{
require 'strscan'
s = StringScanner.new('test string')
s.scan_until(/str/) # => "test str"
s.matched # => "str"
s.pos # => 8
s.pre_match # => "te... -
StringScanner
# <<(str) -> self (24074.0) -
操作対象の文字列に対し str を破壊的に連結します。 マッチ記録は変更されません。
...//emlist[例][ruby]{
require 'strscan'
s = StringScanner.new('test') # => #<StringScanner 0/4 @ "test">
s.scan(/\w(\w*)/) # => "test"
s[0] # => "test"
s[1] # => "est"
s << ' string' # => #<StringScanner 4/11 "test" @ " s......"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 (24074.0) -
操作対象の文字列に対し str を破壊的に連結します。 マッチ記録は変更されません。
...//emlist[例][ruby]{
require 'strscan'
s = StringScanner.new('test') # => #<StringScanner 0/4 @ "test">
s.scan(/\w(\w*)/) # => "test"
s[0] # => "test"
s[1] # => "est"
s << ' string' # => #<StringScanner 4/11 "test" @ " s......"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 (24074.0) -
regexp で指定された正規表現とマッチするまで文字列をスキャンします。
...gexp, true, 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? と同等。......][ruby]{
require 'strscan'
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#c......heck_until StringScanner#exist?... -
StringScanner
# inspect -> String (24072.0) -
StringScannerオブジェクトを表す文字列を返します。
...StringScannerオブジェクトを表す文字列を返します。
文字列にはクラス名の他、以下の情報が含まれます。
* スキャナポインタの現在位置。
* スキャン対象の文字列の長さ。
* スキャンポインタの前後にある文字。......[例][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
# peek(bytes) -> String (24068.0) -
スキャンポインタから長さ bytes バイト分だけ文字列を返します。
...][ruby]{
require 'strscan'
s = StringScanner.new('test string')
s.peek(4) # => "test"
//}
また、このメソッドを実行してもスキャンポインタは移動しません。
StringScanner#peep は将来のバージョンでは削除される予定です。
代わりに StringScanner#pe......[例][ruby]{
require '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)
rescue ArgumentError => err
puts err # negative string size (or size too big)
end
p s.scan(/\w+/) # => "test"
p s.scan(/\s+....../) # => " "
p s.scan(/\w+/) # => "string"
p s.peek(4) # => ""
# このメソッドを実行してもスキャンポインタは移動しません。
s = StringScanner.new('test string')
p s.peek(4) # => "test"
p s.peek(4) # => "test"
p s.scan(/\w+/) # => "test"
p s.peek(4) # => " s...