るりまサーチ

最速Rubyリファレンスマニュアル検索!
36件ヒット [1-36件を表示] (0.013秒)
トップページ > クエリ:matched[x] > クエリ:scan_until[x]

別のキーワード

  1. string scan
  2. _builtin scan
  3. strscan scan_until
  4. stringscanner scan_until
  5. strscan scan_full

ライブラリ

クラス

キーワード

検索結果

StringScanner#scan_until(regexp) -> String | nil (18113.0)

regexp で指定された正規表現とマッチするまで文字列をスキャンします。 マッチに成功したらスキャンポインタを進めて、 スキャン開始位置からマッチ部分の末尾までの部分文字列を返します。 マッチに失敗したら 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 # => "test "
//}...

StringScanner (48.0)

StringScanner は文字列スキャナクラスです。 簡単に高速なスキャナを記述できます。

...e
//}


現在のスキャンポインタがさす地点以外でもマッチしたい場合は、StringScanner#scan_untilなど
を使ってください。

//emlist[例: scan, scan_until の動作の違い][ruby]{
require 'strscan'

def case1
s = StringScanner.new('test string')
p s.scan(/t/)...
..."string"
end

def case2
s = StringScanner.new('test string')
p s.scan_until(/t/) #=> "t"
p s.scan_until(/\w+/) #=> "est"
p s.scan_until(/string/) #=> " string"
p s.scan_until(/\s+/) #=> nil
p s.scan_until(/string/) #=> nil
end

p "case1"
case1
p "case2"
case2
//}

スキ...
...") # 文字コードはEUC-JPとします
p s.exist?(/び/) #=> 4
//}

StringScanner は $~ $& $1 $2 …… などの正規表現関連変数を
セットしません。代わりに StringScanner#[] , StringScanner#matched? などの
マッチデータ関連メソッドを使ってください。...

StringScanner#skip_until(regexp) -> Integer | nil (12.0)

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

...nil を返します。

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

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

s = StringScanner.new('test string')
s.scan_until(/str/) # => 8
s.matched # => "str"
s.pos # => 8
s.pre_match # => "test "
//}...