arrays - 从包含 Ruby 中包含变音符号的单词的数组中获取唯一值
问题描述
如何uniq
在没有正确变音符号的情况下通过折扣相同单词的存在来从数组中获取值?
现在它的工作原理是这样的:
["Poznan", "Poznań", "Gdańsk"].uniq
=> ["Poznan", "Poznań", "Gdańsk"]
这就是我想要实现的目标:
["Poznan", "Poznań", "Gdańsk"].uniq
=> ["Poznań", "Gdańsk"]
解决方案
使用I18n.transliterate : Transliterates
UTF-8
characters to ASCII
. 默认情况下,此方法只会将拉丁字符串音译为 ASCII 近似值:
> require "i18n"
> I18n.config.available_locales = :en
> ["Poznan", "Poznań", "Gdańsk"].map{|e| I18n.transliterate(e)}.uniq
#=> ["Poznan", "Gdansk"]
推荐阅读
- javascript - 如何在刷新 JSP 页面时停止数据插入?
- cors - 为 POST 跨域请求设置 Authorization 标头是否总是需要预检?
- sorting - 如何手动排序/排列 Power BI 漏斗图?
- asp.net-mvc - 我如何将 2 个选择列表合并/合并到 1 个选择列表并保存
- ajax - Ajax With Csrf Protection showing 403 forbidden in codeigniter 3.1.9
- c - Visual Studio:无法打开源文件,即使它显示在解决方案资源管理器中
- couchbase - Couchbase 客户端在配置到远程服务器时尝试连接到 localhost
- javascript - 我可以在sails.js 资产目录中轻松运行vue.js webapp 吗?
- android - 如何使用 Qt 将文件写入 Android 设备?
- swagger - NSwag 过滤器命名空间