Feature #9253
openRegexp named match and case statement
Description
Hello,
I've notice there's no mean to use captured named matches with case
statement :
> a, b = "foo bar", nil
=> ["foo bar", nil]
> case a
> when /foo (?<b>bar)/ then p b
> end
nil
This is not critical, because we can use $1, $2 and friends in place, but it
certainly would be nice and less surprising if it worked.
NB : btw, the link "How to report" [1] from tracker home page [2] is a 404.
[1] https://bugs.ruby-lang.org/projects/ruby/wiki/HowtoReport
[2] https://bugs.ruby-lang.org/
Updated by mame (Yusuke Endoh) almost 11 years ago
There is a way to capture it: use $~[:b] instead of b. Nonetheless, I like this proposal.
--
Yusuke Endoh mame@tsg.ne.jp
Updated by oelmekki (Olivier El Mekki) almost 11 years ago
I didn't know of this syntax, thanks Yusuke.
mame (Yusuke Endoh) wrote:
There is a way to capture it: use $~[:b] instead of b. Nonetheless, I like this proposal.
--
Yusuke Endoh mame@tsg.ne.jp
Updated by shevegen (Robert A. Heiler) almost 11 years ago
Indeed, I did not know of $~[:b] either. Quite nice.
Updated by hsbt (Hiroshi SHIBATA) almost 11 years ago
- Target version changed from 2.1.0 to 2.2.0
Updated by naruse (Yui NARUSE) almost 7 years ago
- Target version deleted (
2.2.0)