Все о программировании под *nix
Vorax
Увлекающийся
Сообщения: 105 Зарегистрирован: 17 фев 2005, 13:36
Откуда: Минск - С. Петербург
Контактная информация:
Сообщение
Vorax » 25 авг 2005, 23:04
Я конечно знаю, что руби хранит строки не в юникоде.
Тогда как быть со строками содержащими, допустим, русские буквы.
"Lщ".length равно 3
Возможно твои ошибки - это то, что нужно Миру. (Вантал)
Vorax
Увлекающийся
Сообщения: 105 Зарегистрирован: 17 фев 2005, 13:36
Откуда: Минск - С. Петербург
Контактная информация:
Сообщение
Vorax » 25 авг 2005, 23:16
Кстати, в питоне то же самое.
len("питон") равно 10
Сколько пользуюсь, а никогда не проверял. И что удивительно, все как-то работает, и ни разу не довелось наступить на эту граблю
Возможно твои ошибки - это то, что нужно Миру. (Вантал)
leikind
Неотъемлемая часть форума
Сообщения: 811 Зарегистрирован: 20 июн 2002, 03:02
Откуда: Брюссель
Контактная информация:
Сообщение
leikind » 26 авг 2005, 11:31
С length как раз проблем нет.
Код: Выделить всё
require 'jcode'
s = "Καλημέρα κόσμε!"
p s.jlength # => 15
leikind
Неотъемлемая часть форума
Сообщения: 811 Зарегистрирован: 20 июн 2002, 03:02
Откуда: Брюссель
Контактная информация:
Сообщение
leikind » 26 авг 2005, 11:33
В строке присваивания были греческие буквы
Vorax
Увлекающийся
Сообщения: 105 Зарегистрирован: 17 фев 2005, 13:36
Откуда: Минск - С. Петербург
Контактная информация:
Сообщение
Vorax » 26 авг 2005, 14:18
require 'jcode'
s = "Καλημέρα κόσμε!"
p s.jlength
У меня 28
Возможно твои ошибки - это то, что нужно Миру. (Вантал)
Vorax
Увлекающийся
Сообщения: 105 Зарегистрирован: 17 фев 2005, 13:36
Откуда: Минск - С. Петербург
Контактная информация:
Сообщение
Vorax » 26 авг 2005, 16:05
$KCODE = "u"
require 'jcode'
s = "Καλημέρα κόσμε!"
p s.jlength
а вот теперь 15
Возможно твои ошибки - это то, что нужно Миру. (Вантал)
mend0za
Неотъемлемая часть форума
Сообщения: 2332 Зарегистрирован: 30 авг 2002, 12:33
Откуда: Minsk
Сообщение
mend0za » 29 авг 2005, 03:54
возможно Ruby не помешало бы поучится у TCL. Там внедрение юникода произошло давно и повлекло за собой интересные явления:
функции определения длины строки в символах и размера строки в байтах - это 2 разные функции.
И увидел я зверя, выходящего из тундры. И число его было 3.14159265358979324...