我的程序文件以UTF-8编码,因此"abc".length == 3
只有"åäö".length == 6
。我意识到å,ä,ö等在UTF-8中存储为两个字节,并且Ruby String是一个字节序列(不是字符),但它很烦人!是否有最佳方法可以解决这个问题?
答案 0 :(得分:4)
您可以使用ruby1.9
$ ruby1.8 -e 'puts "åäö".length'
6
$ ruby1.9 -e 'puts "åäö".length'
3
答案 1 :(得分:0)
只需在文件顶部添加此命令:
# -*- encoding: utf-8 -*-
希望这有帮助。