考虑以下工作代码:
md = nil
begin
puts md[:c]
break
end if md = /(?<c>string)/.match('some string')
但它看起来有点丑。或不?我从这个开始:
puts c if /(?<c>string)/ =~ 'some string'
但它没有看到c
变量,所以我这样说:
puts md[:c] if md = /(?<c>string)/.match('some string')
最后,当我添加它时md = nil
,它开始工作了。你通常是怎么做的?我做错了吗?这里发生了什么事?