В качестве альтернативы вы можете использовать оператор тройного равенства (===
) для класса Regexp, который используется для определения равенства при использовании синтаксиса case
.
@calc.lda = /DC-000044-10|DC-67-09/ === @calc.docket_num
@calc.lda
=> true
BEWARE
/Regexp/ === String
полностью отличается от String === /Regexp/
!!!!Метод не является коммутативным.Каждый класс реализует ===
по-своему.Для вопроса выше, регулярное выражение должно быть слева от ===
.
Для реализации Regexp вы можете увидеть больше документации по этому (начиная с Ruby 2.2.1) здесь .