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