我正在尝试为某些文章标题创建类似于永久链接的行为,并且我不想为永久链接添加新的 db 字段。所以我决定写一个助手来转换我的文章标题:
" O "focoasă" a pornit cruciada, împotriva bărbaţilor zgârciţi " 到 " o-focoasa-a-pornit-cruciada-impotriva-barbatilor-zgarciti "。
虽然我想出了如何用连字符替换空格并使用以下方法删除其他特殊字符( - 除外):
title.gsub(/\s/, "-").gsub(/[^\w-]/, '').downcase
我想知道是否有任何其他方法可以仅通过一个 .gsub 方法调用将字符替换为特定的其他字符,因此我不必为所有的链接 title.gsub("ă", "a") 方法我本地化的 UTF-8 特殊字符。
我正在考虑用所有特殊字符及其对应物构建一个哈希,但我还没有弄清楚如何将变量与正则表达式一起使用。
我一直在寻找的是这样的:
title.gsub(/\s/, "-").gsub(*replace character goes here*).gsub(/[^\w-]/, '').downcase
谢谢!