Feature #739 [ruby-core:19785]
Regexp#match with position
| Status : | Closed | Start : | 11/11/2008 | |
| Priority : | Normal | Due date : | ||
| Assigned to : | - | % Done : | 0% |
|
| Category : | - | |||
| Target version : | 1.9.1 Release Candidate | |||
Description
Regexp#=~ returns the position of the match. Regexp#match lets you search a string from a certain position. It would be great if Regexp#match also returned the position along with MatchData. In the current version (ruby-1.9.1-preview1), rb_reg_match_m already finds the position via reg_match_pos, but it doesn't return it. It would be trivial to stash the position somewhere in the return value. I suppose you could either create an attribute reader in MatchData for position, or maybe Regexp#match could return an array of length 2, where the first element is the position, and the second is the MatchData object.
History
11/11/2008 11:01 AM - Nobuyoshi Nakada
Hi, At Tue, 11 Nov 2008 06:42:08 +0900, Jeremy Stephens wrote in[ruby-core:19785]: > I suppose you could either create an attribute reader in > MatchData for position, or maybe Regexp#match could return an > array of length 2, where the first element is the position, > and the second is the MatchData object. MatchData#begin. $ ruby -e 'm=/b/.match("abc"); p m.begin(0)' 1 -- Nobu Nakada