1
根据this document,$MATCH
是$&
的别名,我想用它来提高可读性。
但它在我的环境中不起作用。
'1234-4567'.match(/\d{4}-/){ $& } # => "1234-"
'1234-4567'.match(/\d{4}-/){ $MATCH } # => nil
我误解了什么?
根据this document,$MATCH
是$&
的别名,我想用它来提高可读性。
但它在我的环境中不起作用。
'1234-4567'.match(/\d{4}-/){ $& } # => "1234-"
'1234-4567'.match(/\d{4}-/){ $MATCH } # => nil
我误解了什么?
这些[伪]全局变量的人名在默认情况下未启用。您必须要求english
才能使用它们。
'1234-4567'.match(/\d{4}-/){ $& } # => "1234-"
'1234-4567'.match(/\d{4}-/){ $MATCH } # => nil # !> global variable `$MATCH' not initialized
require 'english'
'1234-4567'.match(/\d{4}-/){ $MATCH } # => "1234-"
我想避免全局变量并使用'match(...){| m | m [0]}'代替。 – Stefan
@Stefan:或者只是''1234-4567'[/ \ d {4} - /]' –
@EricDuminil当然,我认为这是一个缩短的例子。 – Stefan