Лучшая практика для обработки неанглийских символов в Ruby? - PullRequest
1 голос
/ 27 марта 2010

Мой программный файл закодирован в UTF-8, поэтому "abc".length == 3, но "åäö".length == 6. Я понимаю, что å, ä, ö и т. Д. Хранятся как два байта в UTF-8, и что строка Ruby представляет собой последовательность байтов (не символов), но это раздражает! Есть ли лучший способ обойти эту проблему?

Ответы [ 2 ]

4 голосов
/ 27 марта 2010

Вы можете использовать ruby1.9

$ ruby1.8 -e 'puts "åäö".length'
6
$ ruby1.9 -e 'puts "åäö".length'
3
0 голосов
/ 27 марта 2010

Просто добавьте эту команду в начало вашего файла:

# -*- encoding: utf-8 -*-

Надеюсь, это поможет.

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