88件ヒット
[1-88件を表示]
(0.174秒)
種類
- インスタンスメソッド (55)
- 特異メソッド (33)
クラス
- MatchData (44)
- OptionParser (22)
- Regexp (22)
キーワード
- accept (22)
- end (11)
-
last
_ match (22) - offset (22)
検索結果
先頭5件
-
MatchData
# begin(n) -> Integer | nil (27437.0) -
n 番目の部分文字列先頭のオフセットを返します。
...nilを返します。
@param n 部分文字列を指定する数値。
@raise IndexError 範囲外の n を指定した場合に発生します。
//emlist[例][ruby]{
/(foo)(bar)(BAZ)?/ =~ "foobarbaz"
p $~.begin(0) # => 0
p $~.begin(1) # => 0
p $~.begin(2) # => 3
p $~.begin(3) # => nil
p......$~.begin(4) # => `begin': index 4 out of matches (IndexError)
//}
@see MatchData#end... -
Regexp
. last _ match -> MatchData (21744.0) -
カレントスコープで最後に行った正規表現マッチの MatchData オ ブジェクトを返します。このメソッドの呼び出しは $~ の参照と同じです。
... MatchData オ
ブジェクトを返します。このメソッドの呼び出しは $~
の参照と同じです。
//emlist[例][ruby]{
/(.)(.)/ =~ "ab"
p Regexp.last_match # => #<MatchData:0x4599e58>
p Regexp.last_match[0] # => "ab"
p Regexp.last_match[1] # => "a"
p Regexp.last_match[2]......# => "b"
p Regexp.last_match[3] # => nil
//}... -
Regexp
. last _ match(nth) -> String | nil (21579.0) -
整数 nth が 0 の場合、マッチした文字列を返します ($&)。それ以外では、nth 番目の括弧にマッチ した部分文字列を返します($1,$2,...)。 対応する括弧がない場合やマッチしなかった場合には nil を返し ます。
...かった場合には nil を返し
ます。
//emlist[例][ruby]{
/(.)(.)/ =~ "ab"
p Regexp.last_match # => #<MatchData:0x4599e58>
p Regexp.last_match(0) # => "ab"
p Regexp.last_match(1) # => "a"
p Regexp.last_match(2) # => "b"
p Regexp.last_match(3) # => nil
//}
正規表現全体......の
Regexp.last_match はnil を返すため、
last_match[1] の形式では例外 NoMethodError が発生します。
対して、last_match(1) は nil を返します。
//emlist[例][ruby]{
str = "This is Regexp"
/That is Regexp/ =~ str
p Regexp.last_match # => nil
begin
p Regexp.last_match[1......] # 例外が発生する
rescue
puts $! # => undefined method `[]' for nil:NilClass
end
p Regexp.last_match(1) # => nil
//}
@param nth 整数を指定します。
整数 nth が 0 の場合、マッチした文字列を返します。それ以外では、nth 番目の括弧にマッチした... -
MatchData
# offset(n) -> [Integer , Integer] | [nil , nil] (9314.0) -
n 番目の部分文字列のオフセットの配列 [start, end] を返 します。
...ットの配列 [start, end] を返
します。
//emlist[例][ruby]{
[ self.begin(n), self.end(n) ]
//}
と同じです。n番目の部分文字列がマッチしていなければ
[nil, nil] を返します。
@param n 部分文字列を指定する数値
@raise IndexError 範囲外の n を......指定した場合に発生します。
@see MatchData#begin, MatchData#end......指定した場合に発生します。
@see MatchData#begin, MatchData#end, MatchData#offset... -
MatchData
# offset(name) -> [Integer , Integer] | [nil , nil] (9314.0) -
name という名前付きグループに対応する部分文字列のオフセットの配列 [start, end] を返 します。
...列 [start, end] を返
します。
//emlist[例][ruby]{
[ self.begin(name), self.end(name) ]
//}
と同じです。nameの名前付きグループにマッチした部分文字列がなければ
[nil, nil] を返します。
@param name 名前(シンボルか文字列)
@raise IndexError 正規....../emlist[例][ruby]{
/(?<year>\d{4})年(?<month>\d{1,2})月(?:(?<day>\d{1,2})日)?/ =~ "2021年1月"
p $~.offset('year') # => [0, 4]
p $~.offset(:year) # => [0, 4]
p $~.offset('month') # => [5, 6]
p $~.offset(:month) # => [5, 6]
p $~.offset('day') # => [nil, nil]
p $~.offset('century'......) # => `offset': undefined group name reference: century (IndexError)
//}
@see MatchData#begin, MatchData#end......) # => `offset': undefined group name reference: century (IndexError)
//}
@see MatchData#begin, MatchData#end, MatchData#offset... -
MatchData
# end(n) -> Integer | nil (9306.0) -
n 番目の部分文字列終端のオフセットを返します。
...ば nil を返します。
@param n 部分文字列を指定する数値。
@raise IndexError 範囲外の n を指定した場合に発生します。
//emlist[例][ruby]{
/(foo)(bar)(BAZ)?/ =~ "foobarbaz"
p $~.end(0) # => 6
p $~.end(1) # => 3
p $~.end(2) # => 6
p $~.end(3) # => nil
p $~.......end(4) # => `end': index 4 out of matches (IndexError)
//}
@see MatchData#begin... -
OptionParser
# accept(klass , pat = / . * / ) {|str| . . . } -> () (3412.0) -
OptionParser.accept と同様ですが、 登録したブロックはレシーバーに限定されます。
...Parser.accept と同様ですが、
登録したブロックはレシーバーに限定されます。
@param klass クラスオブジェクトを与えます。
@param pat match メソッドを持ったオブジェクト(Regexp オブジェクトなど)を与えます。
//emlist[例][ruby]{
req......uire "optparse"
require "time"
opts = OptionParser.new
opts.accept(Time) do |s,|
begin
Time.parse(s) if s
rescue
raise OptionParser::InvalidArgument, s
end
end
opts.on("-t", "--time [TIME]", Time) do |time|
p time.class # => Time
end
opts.parse!(ARGV)
//}... -
OptionParser
. accept(klass , pat = / . * / ) {|str| . . . } -> () (3412.0) -
オプションの引数を文字列から Ruby のオブジェクトに変換するための ブロックを登録します。すべての OptionParser インスタンスに共通です。
...ンの引数を文字列から Ruby のオブジェクトに変換するための
ブロックを登録します。すべての OptionParser インスタンスに共通です。
ブロックには、文字列として与えられるオプションの引数から klass のインスタンスを生成......で
klass のインスタンスに変換されてから、OptionParser#on メソッドで登録したブロックに渡されます。
//emlist[][ruby]{
require "optparse"
require "time"
OptionParser.accept(Time) do |s,|
begin
Time.parse(s) if s
rescue
raise OptionParser::InvalidArgume......ts = OptionParser.new
opts.on("-t", "--time [TIME]", Time) do |time|
p time.class #=> Time
end
opts.parse!(ARGV)
//}
いくつかのクラスに対しては変換用のブロックがデフォルトで登録されて
います。OptionParser#on を参照して下さい。
@param klass クラ...