Ruby 1.8.7 リファレンスマニュアル > ライブラリ一覧 > strscanライブラリ > StringScannerクラス > match?

instance method StringScanner#match?

match?(regexp) -> Fixnum | nil[permalink][rdoc]

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

マッチしたサイズは文字単位でなくバイト単位となります。

require 'strscan'
s = StringScanner.new("るびい") # 文字コードはUTF-8とします
puts s.string      #=> るびい
puts s.match?(/る/)  #=> 3
[PARAM] regexp:
マッチに用いる正規表現を指定します。

使用例

s = StringScanner.new('test string')
p s.match?(/\w+/)   #=> 4
p s.match?(/\w+/)   #=> 4
p s.match?(/\s+/)   #=> nil