クラス
- StringScanner (484)
キーワード
- << (11)
- [] (11)
-
beginning
_ of _ line? (11) - bol? (11)
- charpos (11)
- check (11)
-
check
_ until (11) - clear (11)
- concat (11)
- empty? (11)
- eos? (11)
- exist? (11)
-
get
_ byte (11) - getbyte (11)
- getch (11)
- inspect (11)
- match? (11)
- matched (11)
- matched? (11)
-
matched
_ size (11) - matchedsize (11)
- peek (11)
- peep (11)
- pointer (11)
- pointer= (11)
- pos (11)
- pos= (11)
-
post
_ match (11) -
pre
_ match (11) - reset (11)
- rest (11)
- rest? (11)
-
rest
_ size (11) - restsize (11)
- scan (11)
-
scan
_ full (11) -
scan
_ until (11) -
search
_ full (11) - skip (11)
-
skip
_ until (11) - string (11)
- string= (11)
- terminate (11)
- unscan (11)
検索結果
先頭5件
-
StringScanner
# string -> String (9203.0) -
スキャン対象にしている文字列を返します。
...mlist[例][ruby]{
require 'strscan'
s = StringScanner.new('test string')
s.string # => "test string"
//}
返り値は freeze されていません。
//emlist[例][ruby]{
require 'strscan'
s = StringScanner.new('test string')
s.string.frozen? # => false
//}
なお、このメソッドは String......仕様に依存したコードを書かないようにしましょう。
//emlist[例][ruby]{
require 'strscan'
str = 'test string'
s = StringScanner.new(str)
s.string == str # => true
s.string.eql?(str) # => true (将来は false になる可能性がある)
//}
また、返り値の文字列......かないでください。
//emlist[例][ruby]{
require 'strscan'
str = 'test string'
s = StringScanner.new(str)
s.string.replace("0123")
s.scan(/\w+/) # => "0123" (将来は "test" が返る可能性あり)
str # => "0123" (将来は "test string" が返る可能性あり)
//}... -
StringScanner
# string=(str) (9203.0) -
スキャン対象の文字列を str に変更して、マッチ記録を捨てます。
...str に変更して、マッチ記録を捨てます。
@param str スキャン対象の文字列を str に変更して、マッチ記録を捨てます。
@return str を返します。
//emlist[例][ruby]{
require 'strscan'
str = '0123'
s = StringScanner.new('test string')
s.string = str... -
StringScanner
# terminate -> self (9203.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 を使ってください。... -
StringScanner
# pointer -> Integer (6203.0) -
現在のスキャンポインタのインデックスを返します。
...デックスを返します。
//emlist[例][ruby]{
require '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
# check _ until(regexp) -> String | nil (6103.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 # => 0
s.pre_match # => "test "
//}... -
StringScanner
# concat(str) -> self (6103.0) -
操作対象の文字列に対し str を破壊的に連結します。 マッチ記録は変更されません。
...str を破壊的に連結します。
マッチ記録は変更されません。
selfを返します。
@param str 操作対象の文字列に対し str を破壊的に連結します。
//emlist[例][ruby]{
require 'strscan'
s = StringScanner.new('test') # => #<StringScanner 0/4 @ "test">
s.mat......=> "test"
s[0] # => "test"
s[1] # => "est"
s << ' string' # => #<StringScanner 4/11 "test" @ " stri...">
s[0] # => "test"
s[1] # => "est"
s.match(/\s+/) # => " "
s.match(......"string"
//}
この操作は StringScanner.new に渡した文字列にも影響することがあります。
//emlist[例][ruby]{
require 'strscan'
str = 'test'
s = StringScanner.new(str) # => #<StringScanner 0/4 @ "test">
s << ' string' # => #<StringScanner 0/11 @ "test ...">
str... -
StringScanner
# empty? -> bool (6103.0) -
スキャンポインタが文字列の末尾を指しているなら true を、 末尾以外を指しているなら false を返します。
...ているなら true を、
末尾以外を指しているなら false を返します。
//emlist[例][ruby]{
require 'strscan'
s = StringScanner.new('test string')
s.eos? # => false
s.scan(/\w+/)
s.scan(/\s+/)
s.scan(/\w+/)
s.eos? # => true
//}
StringScanner#empty? は将来のバ......ージョンで削除される予定です。
代わりに StringScanner#eos? を使ってください。... -
StringScanner
# exist?(regexp) -> Integer | nil (6103.0) -
スキャンポインタの位置から,次にマッチする文字列の末尾までの長さを返します。
...ポインタを進めません。
@param regexp マッチに用いる正規表現を指定します。
//emlist[例][ruby]{
require 'strscan'
s = StringScanner.new('test string')
s.exist?(/s/) # => 3
s.exist?(//) # => 0
s.scan(/\w+/) # => "test"
s.exist?(/s/) # => 2
s.exist?(/e/) # => nil
//}... -
StringScanner
# get _ byte -> String | nil (6103.0) -
1 バイトスキャンして文字列で返します。 スキャンポインタをその後ろに進めます。 スキャンポインタが文字列の末尾を指すなら nil を返します。
...StringScanner#getbyte は将来のバージョンで削除される予定です。
代わりに StringScanner#get_byte を使ってください。
//emlist[例][ruby]{
require 'strscan'
utf8 = "\u{308B 3073 3044}"
s = StringScanner.new(utf8.encode("EUC-JP"))
p s.get_byte #=> "\xA4"
p s.get_......byte #=> "\xEB"
p s.get_byte #=> "\xA4"
p s.get_byte #=> "\xD3"
p s.get_byte #=> "\xA4"
p s.get_byte #=> "\xA4"
p s.get_byte #=> nil
//}... -
StringScanner
# getbyte -> String | nil (6103.0) -
1 バイトスキャンして文字列で返します。 スキャンポインタをその後ろに進めます。 スキャンポインタが文字列の末尾を指すなら nil を返します。
...StringScanner#getbyte は将来のバージョンで削除される予定です。
代わりに StringScanner#get_byte を使ってください。
//emlist[例][ruby]{
require 'strscan'
utf8 = "\u{308B 3073 3044}"
s = StringScanner.new(utf8.encode("EUC-JP"))
p s.get_byte #=> "\xA4"
p s.get_......byte #=> "\xEB"
p s.get_byte #=> "\xA4"
p s.get_byte #=> "\xD3"
p s.get_byte #=> "\xA4"
p s.get_byte #=> "\xA4"
p s.get_byte #=> nil
//}...