Backport #7157
closedRuby ignores Kernel#gsub block
Description
When working with command line and use Kernel#gsub, ruby ignores the block if given.
Reproduce code:
Test text file:
File name:
test
File Content:
test
Test Command line input:
ruby -pe 'gsub(/t([a-z])s/){"d"+$1.capitalize}' test
Expected output:
dEt
Actual output:
Updated by zzak (zzak _) over 11 years ago
The docs for Kernel#gsub mention:
"Equivalent to $.gsub..., except that $ receives the modified
result. Available only when -p/-n command line option specified."
On Sat, Oct 13, 2012 at 8:14 PM, popoxee (Bruce Metz)
popoxee@hotmail.com wrote:
Issue #7157 has been reported by popoxee (Bruce Metz).
Bug #7157: Ruby ignores Kernel#gsub block
https://bugs.ruby-lang.org/issues/7157Author: popoxee (Bruce Metz)
Status: Open
Priority: Normal
Assignee:
Category:
Target version:
ruby -v: ruby 1.9.3p286 (2012-10-12 revision 37165) [x86_64-linux]When working with command line and use Kernel#gsub, ruby ignores the block if given.
Reproduce code:
Test text file:
File name:
test
File Content:
testTest Command line input:
ruby -pe 'gsub(/t([a-z])s/){"d"+$1.capitalize}' test
Expected output:
dEt
Actual output:
Updated by nobu (Nobuyoshi Nakada) over 11 years ago
- Status changed from Open to Closed
- % Done changed from 0 to 100
This issue was solved with changeset r37177.
Bruce, thank you for reporting this issue.
Your contribution to Ruby is greatly appreciated.
May Ruby be with you.
ruby.c: passing block
- ruby.c (rb_f_sub, rb_f_gsub): pass the given block.
[ruby-core:47967] [Bug #7157]
Updated by nobu (Nobuyoshi Nakada) over 11 years ago
- Tracker changed from Bug to Backport
- Project changed from Ruby master to Backport193
- Status changed from Closed to Assigned
- Assignee set to usa (Usaku NAKAMURA)
Updated by usa (Usaku NAKAMURA) over 11 years ago
- Status changed from Assigned to Closed
This issue was solved with changeset r37205.
Bruce, thank you for reporting this issue.
Your contribution to Ruby is greatly appreciated.
May Ruby be with you.
merge revision(s) 37177: [Backport #7157]
* ruby.c (rb_f_sub, rb_f_gsub): pass the given block.
[ruby-core:47967] [Bug #7157]