るりまサーチ (Ruby 2.1.0)

最速Rubyリファレンスマニュアル検索!
15件ヒット [1-15件を表示] (0.059秒)
トップページ > バージョン:2.1.0[x] > クエリ:String[x] > クエリ:b[x] > ライブラリ:strscan[x]

別のキーワード

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

クラス

キーワード

検索結果

StringScanner#get_byte -> String | nil (27631.0)

1 バイトスキャンして文字列で返します。 スキャンポインタをその後ろに進めます。 スキャンポインタが文字列の末尾を指すなら nil を返します。

...のバージョンで削除される予定です。
代わりに 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_by...

StringScanner#getbyte -> String | nil (27631.0)

1 バイトスキャンして文字列で返します。 スキャンポインタをその後ろに進めます。 スキャンポインタが文字列の末尾を指すなら nil を返します。

...のバージョンで削除される予定です。
代わりに 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_by...

StringScanner#bol? -> bool (27607.0)

スキャンポインタが行頭を指しているなら true を、 行頭以外を指しているなら false を返します。

...たは \n の直後を指していることです。
文字列末尾は必ずしも行頭ではありません。

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

s = StringScanner.new("test\nstring")
s.bol? # => true
s.scan(/\w+/)
s.bol? # => false
s.scan(/\n/)
s.bol? # => true
s.scan(...

StringScanner#beginning_of_line? -> bool (27307.0)

スキャンポインタが行頭を指しているなら true を、 行頭以外を指しているなら false を返します。

...たは \n の直後を指していることです。
文字列末尾は必ずしも行頭ではありません。

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

s = StringScanner.new("test\nstring")
s.bol? # => true
s.scan(/\w+/)
s.bol? # => false
s.scan(/\n/)
s.bol? # => true
s.scan(...

StringScanner#peek(bytes) -> String (9721.0)

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

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

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

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

StringScan...
...きは空文字列 ("") を返します。

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

//emlist[例][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)
re...

絞り込み条件を変える

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

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

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

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

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

StringScan...
...きは空文字列 ("") を返します。

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

//emlist[例][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)
re...

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

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

...部分文字列を返します。
false ならばマッチした部分文字列の長さを返します。

//emlist[例][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...

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

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

...部分文字列を返します。
false ならばマッチした部分文字列の長さを返します。

//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...

StringScanner#getch -> String | nil (9328.0)

一文字スキャンして文字列で返します。 スキャンポインタをその後ろに進めます。 スキャンポインタが文字列の末尾を指すならnilを返します。

...すならnilを返します。

一文字の定義は、与えた文字列のエンコードに依存します。

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

utf8 = "\u{308B 3073 3044}"
s = StringScanner.new(utf8.encode("UTF-8"))
p s.getch # => "る"
p s.getch...

StringScanner#empty? -> bool (9325.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
//}

StringScanne...

絞り込み条件を変える

StringScanner#eos? -> bool (9325.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
//}

StringScanne...

StringScanner#matched? -> bool (9325.0)

前回のマッチが成功していたら true を、 失敗していたら false を返します。

...前回のマッチが成功していたら true を、
失敗していたら false を返します。

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

s = StringScanner.new('test string')
s.matched? # => false
s.scan(/\w+/) # => "test"
s.matched? # => true
s.scan(/\w+/) # => nil
s.matched? # => fal...

StringScanner#rest? -> bool (9325.0)

文字列が残っているならば trueを、 残っていないならば false を返します。

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

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

s = StringScanner.new('test string')
p s.eos? # => false
p s.rest? # => true
s.scan(/\w+/)
s.scan(/\s+/)
s.scan(/\w+/)
p s.eos?...

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

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

...ire '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]{
require 'strscan'

s...

StringScanner#matched_size -> Integer | nil (9061.0)

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

...e '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]{
require 'strscan'...

絞り込み条件を変える