Feature #4780

String#split with a block

Added by yimutang (Joey Zhou) over 9 years ago. Updated almost 3 years ago.

Target version:


Mentioned before, in another (rejected) issue thread:

There are a few methods, which return an array without a trailing block, or also can be iterated with a block.

Such as String#scan.

String#split has only one form:

str.split(pattern=$;, limit=0) -> array

Maybe add a iterative form, when with a block:

str.split(pattern=$;, limit=0) {|field| ... } -> str

If the string is very long, and I only need to play with the splitted string one by one, this will not create a useless expensive array.


Related issues

Related to Ruby master - Feature #4615: Add IO#split and iterative form of String#splitRejectedmatz (Yukihiro Matsumoto)04/26/2011Actions

Updated by naruse (Yui NARUSE) over 9 years ago

  • Status changed from Open to Assigned
  • Assignee set to matz (Yukihiro Matsumoto)

Updated by mame (Yusuke Endoh) about 8 years ago

  • Target version set to 2.6

Updated by naruse (Yui NARUSE) about 3 years ago

  • Target version deleted (2.6)

Updated by nobu (Nobuyoshi Nakada) almost 3 years ago

  • Description updated (diff)

Updated by nobu (Nobuyoshi Nakada) almost 3 years ago

  • Status changed from Assigned to Closed

Applied in changeset trunk|r62763.

string.c: split with block

  • string.c (rb_str_split_m): yield each split substrings if the block is given, instead of returing the array. [Feature #4780]

Also available in: Atom PDF