Quantcast
Channel: Ruby Issue Tracking System: shevegen (Robert A. Heiler)
Viewing all articles
Browse latest Browse all 100

Ruby master - Feature #16796: Assigning local variables when using `case when regexp`

$
0
0

sawa wrote:

I have met such use cases, and agree this would be useful.

I don't disagree in the sense that there may be valid use cases,
but the syntax is kind of weird:

/s(?<mid>.)r/

I use regexes a lot of course, since they are useful. But do we
really gain a lot from making what used to be simple, harder?

I understand that you may avoid an extra step (assignment, after
the regex match), but to me personally I find that style so
much harder to read, compared to:

if /(foo.+)/
  mid = $1.to_s.dup # or something like that
end

Admittedly I am very much a very oldschool-ruby person. ;)

By the way, while I personally do not really like $ variables,
I actually use them a LOT, whereas I rarely use match_data[]
syntax style. Dunno why, perhaps a habit, but the $1 $2 etc..
are ony of the few (semi) global variables that I like.
(I write "semi" because they tend to be more volatile, which
is why I may tend to use .dup like a semi-crazy person a
lot, rather than fix a regex or handle nils - I .to_s.dup
all the things! ;) )


Viewing all articles
Browse latest Browse all 100

Trending Articles