NumberHelper的Rails gsub方法顯示符號直到unicode'\ u20B8',但未顯示任何符號'\ u20B9'。Rails gsub未能顯示符號(Rupee Symbol)
導軌 - 3.0.5 紅寶石 - 1.9.2-P0
在Rails控制檯,執行以下命令:
ruby-1.9.2-p0 > value = "123.45"
=> "123.45"
ruby-1.9.2-p0 > unit = "\u20B9"
=> "\u20B9"
ruby-1.9.2-p0 > puts unit
₹
=> nil
ruby-1.9.2-p0 > format = "%u %n"
=> "%u %n"
ruby-1.9.2-p0 > format.gsub(/%n/, value).gsub(/%u/, rup)
=> "\u20B9 123.45"
ruby-1.9.2-p0 > format.gsub(/%n/, value).gsub(/%u/, "\u20B8")
=> "₸ 123.45"
ruby-1.9.2-p0 >
請指點爲什麼這種行爲與GSUB?
順便說一下,gsub不是來自NumberHelper,它是ruby的String類的核心方法。 – d11wtq 2012-04-10 15:18:03
是真的。這是一個輸入錯誤,我想從NumberHelper中提到number_from_currency,然後最後鑽出number_from_currency中使用的gsub是不能正確打印符號的那個。 – 2012-04-10 15:21:10