将 Unicode 数字转换为红宝石中的自然数



目前我在Rails 3项目中遇到了UNICODE字符问题。在高棉语字符号(unicode 字符)中,字母"៤"等于 4。我想比较 ៤>= 3 但不能。谁能建议我一些关于如何比较的想法?可能有一些方法可以将៤转换为4,以便我可以进行比较。注意我可以通过将键盘从 Eng 切换到 Khm 并正常键入 4 来键入 ៤。

谢谢

数字的行为方式是否与阿拉伯数字相同?然后,您可以使用这个小助手方法将高棉数字字符串转换为整数:

# encoding: utf-8
class String
  def to_khmer
    num_string = chars.map{ |c| %w[០ ១ ២ ៣ ៤ ៥ ៦ ៧ ៨ ៩].index(c) || c }.join
    if num_string =~ /./
      num_string.to_f
    else
      num_string.to_i
    end
  end
end

是的,你可以这样做

"s".ord == 115 #=> true

115.chr == "s" #=> true
4.chr.ord == 4 #=> true

相关内容

  • 没有找到相关文章

最新更新