Actions
Feature #5606
closedString#each_match(regexp)
Status:
Feedback
Assignee:
-
Target version:
-
Description
文字列上の正規表現に一致する場所のoffsetを順に処理できるような
イテレータが欲しかったのですが、
ざっと検索すると1996年
http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-list/1206
の昔から話はあり、
http://stackoverflow.com/questions/6804557/how-do-i-get-the-match-data-for-all-occurrences-of-a-ruby-regular-expression-in
全くないという事はなくて、それなりに需要がありそうです。
class String
def each_match(pattern, offset=0)
while(m = self.match(pattern, offset))
offset = m.begin(0)+1
yield m
end
end
end
いかがしょうか?
対称にはRegexp#each_matchもですが、、
Actions
Like0
Like0Like0Like0Like0Like0Like0