/* * call-seq: * rxp.match(str) => matchdata or nil * * Returns a <code>MatchData</code> object describing the match, or * <code>nil</code> if there was no match. This is equivalent to retrieving the * value of the special variable <code>$~</code> following a normal match. * * /(.)(.)(.)/.match("abc")[2] #=> "b" */ VALUE rb_reg_match(re, str) VALUE re, str; { long start; if (NIL_P(str)) { rb_backref_set(Qnil); return Qnil; } StringValue(str); start = rb_reg_search(re, str, 0, 0); if (start < 0) { return Qnil; } return LONG2FIX(start); }