Как реализовать string.codepoints для pre ruby ​​1.9.1 - PullRequest
0 голосов
/ 12 февраля 2019

По причинам обратной совместимости я хочу реализовать метод String#codepoints ruby ​​(введен в 1.9.1).

Я думаю

def codepoints(str)
    str.split('').map(&:ord)
end

, но я обеспокоен тем, что #ord не будет работать должным образом с более ранними версиями ruby.

1 Ответ

0 голосов
/ 12 февраля 2019

ord был представлен в Ruby 1.9.1, см. APIDock .

Для строк ASCII вы можете использовать #bytes, для Unicode он не будет вести себя так же, как #codepoints.

В Ruby 1.8.x вы можете использовать ? для получения числового значения символа, я не знаю, что использовать для 1.9+0,0.

Кстати, рубины старше 2.3 больше не поддерживаются, рассмотрите возможность обновления.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...