Project

General

Profile

Actions

Feature #4780

closed

String#split with a block

Added by yimutang (Joey Zhou) about 10 years ago. Updated over 3 years ago.

Status:
Closed
Priority:
Normal
Target version:
-
[ruby-core:36466]

Description

Mentioned before, in another (rejected) issue thread: http://redmine.ruby-lang.org/issues/4615

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.

Joey


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) about 10 years ago

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

Updated by mame (Yusuke Endoh) over 8 years ago

  • Target version set to 2.6
Actions #3

Updated by naruse (Yui NARUSE) over 3 years ago

  • Target version deleted (2.6)

Updated by matz (Yukihiro Matsumoto) over 3 years ago

Accepted.

Matz.

Actions #5

Updated by nobu (Nobuyoshi Nakada) over 3 years ago

  • Description updated (diff)
Actions #6

Updated by nobu (Nobuyoshi Nakada) over 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]
Actions

Also available in: Atom PDF