ruby-on-rails – 使用ruby gsub和regexp更智能的角色替换
发布时间:2020-12-17 03:43:58 所属栏目:百科 来源:网络整理
导读:我正在尝试为某些文章标题创建类似行为的永久链接,我不想为永久链接添加新的数据库字段.所以我决定写一个帮助器来转换我的文章标题: “O”focoas?“a pornit cruciada,?mpotrivab?rba?ilorzgarci?i”to to ?“邻focoasa-A-pornit-cruciada-impotriva-barbat
我正在尝试为某些文章标题创建类似行为的永久链接,我不想为永久链接添加新的数据库字段.所以我决定写一个帮助器来转换我的文章标题:
“O”focoas?“a pornit cruciada,?mpotrivab?rba?ilorzgarci?i”to to 虽然我想出了如何用连字符替换空格并删除其他特殊字符(除了 – )使用: title.gsub(/s/,"-").gsub(/[^w-]/,'').downcase 我想知道是否有任何其他方法可以从一个.gsub方法调用替换一个特定的其他字符的字符,所以我不必为所有的链接title.gsub(“?”,“a”)方法我本地化的UTF-8特殊字符. 我正在考虑用所有特殊字符和它们的对应物构建一个哈希,但我还没有弄清楚如何使用regexp的变量. 我在寻找的是: title.gsub(/s/,"-").gsub(*replace character goes here*).gsub(/[^w-]/,'').downcase 谢谢! 解决方法
我在我的应用程序中使用
Unidecoder gem解决了这个问题:
require 'unidecode' def uninternationalize(str) Unidecoder.decode(str).gsub("[?]","").gsub(/`/,"'").strip end (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |