ruby-on-rails - unicode 字符串的长度

标签 ruby-on-rails ruby unicode

在我的 Rails(2.3,Ruby 1.8.7)应用程序中,我需要将字符串截断到一定长度。该字符串是 unicode,在控制台中运行测试时,例如 'א'.length,我意识到返回了双倍长度。我想要一个与编码无关的长度,以便对 unicode 字符串或 latin1 编码字符串进行相同的截断。

我已经了解了 Ruby 的大部分 unicode 资料,但仍然有些一头雾水。应该如何解决这个问题?

最佳答案

Rails 有一个返回多字节字符的mb_chars 方法。试试 unicode_string.mb_chars.slice(0,50)

关于ruby-on-rails - unicode 字符串的长度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3604916/

相关文章:

c# - 为什么'Weiss'='Weiß'或通过Unicode列在SQL Server中搜索

android - 从 Assets 中读取 unicode 文本

python - 使用 python json.loads 解析 unicode 输入

ruby-on-rails - Rails 中 link_to body 中嵌入的 HTML

ruby-on-rails - 如何在 Ruby 中并行递归下载 FTP 文件夹?

javascript - Ruby on Rails,javascript 冲突

ruby - 如何在 ruby​​ (1.9) case 语句中对返回值进行多重赋值?

ruby-on-rails - Docker-compose - Redis 位于 0.0.0.0 而不是 127.0.0.1

ruby - 如何使用 Ruby 从 Ubuntu 连接到在 Windows 中运行的 MS SQL Server?

ruby - 2..-1 的范围是什么意思? (Ruby koans about_arrays.rb)