Fab*_*ani 2 ruby string ruby-on-rails character-encoding
我有一个真正的麻烦,以获得正确的口音,我相信这可能发生在大多数拉丁语言,在我的情况下,葡萄牙语
我有一个字符串作为参数,我必须得到第一个字母,并取消它!这在红宝石中应该是微不足道的,但这里有一个问题:
s1 = 'alow'; s1.size #=> 4
s2 = 'álow'; s2.size #=> 5
s1[0,1] #=> "a"
s2[0,1] #=> "\303"
s1[0,1].upcase #=> 'A'
s2[0,1].upcase #=> '\303' !!!
s1[0,1].upcase + s1[1,100] #=> "Alow" OK
s2[0,1].upcase + s2[1,100] #=> "álow" NOT OK
Run Code Online (Sandbox Code Playgroud)
我想把它变成通用的,有什么帮助吗?
[编辑]
我发现Rails字符串可以转换为多字节,如类./active_support/core_ext/string/multibyte.rb中所示,只需使用:
s2.mb_chars[0,1].upcase.to_s #=> "Á"
Run Code Online (Sandbox Code Playgroud)
仍然,@ nsdk方法更容易使用=)
| 归档时间: |
|
| 查看次数: |
885 次 |
| 最近记录: |