^\d+$
значит - от начала строки и до её конца может быть только одна цифра или больше. А [//]
ищет совпадения в строке по регекспу. Соответственно:'10'[/^\d+$/] => "10"
'foo'[/^\d+$/] => nil
if
все что не false или nil это true, то мы можем считать, что если number[/^\d+$/]
вернул что угодно, кроме nil, то number
это число. '\''
рабочее решение мне сгенерил гем whenever, вот такое вот совпадение... А разбираться на тот момент, мне было уже лень.