36件ヒット
[1-36件を表示]
(0.013秒)
種類
- インスタンスメソッド (24)
- クラス (12)
ライブラリ
- strscan (36)
クラス
- StringScanner (24)
キーワード
- StringScanner (12)
-
skip
_ until (12)
検索結果
先頭3件
-
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 "
//}...