我得到了一些关于人类可读的格式的字符串,这些将是我的wordpress文章的标题。因此,为了生成该帖子的url,我想知道是否有某种方法用于在ruby中"urlize“字符串。例如,如果我的字符串“对我的áccented字符串做了一些测试",我想得到”做-一些测试-我的口音-字符串“,还是我必须写我自己的?提前感谢!
发布于 2017-11-17 16:39:33
我有时也使用i18n (如here),但如果您不想再需要另一个gem,也可以使用.tr
string_with_special_chars.tr(
"ÀÁÂÃÄÅàáâãäåĀāĂ㥹ÇçĆćĈĉĊċČčÐðĎďĐđÈÉÊËèéêëĒēĔĕĖėĘęĚěĜĝĞğĠġĢģĤĥĦħÌÍÎÏìíîïĨĩĪīĬĭĮįİıĴĵĶķĸĹĺĻļĽľĿŀŁłÑñŃńŅņŇňʼnŊŋÒÓÔÕÖØòóôõöøŌōŎŏŐőŔŕŖŗŘřŚśŜŝŞşŠšſŢţŤťŦŧÙÚÛÜùúûüŨũŪūŬŭŮůŰűŲųŴŵÝýÿŶŷŸŹźŻżŽž",
"AAAAAAaaaaaaAaAaAaCcCcCcCcCcDdDdDdEEEEeeeeEeEeEeEeEeGgGgGgGgHhHhIIIIiiiiIiIiIiIiIiJjKkkLlLlLlLlLlNnNnNnNnnNnOOOOOOooooooOoOoOoRrRrRrSsSsSsSssTtTtTtUUUUuuuuUuUuUuUuUuUuWwYyyYyYZzZzZz")发布于 2017-11-17 16:33:02
在提出了一些建议之后,实施了我自己的方法:
require 'i18n'
I18n.config.available_locales = :en
def urlize(string)
I18n.transliterate(string).squeeze.gsub(" ", "-").downcase
end希望这能帮到别人,谢谢你的帮助!
发布于 2017-11-17 22:05:11
不会给你这么好的结果,但是
require 'uri'
URI.escape(string.gsub(/\s+/, ?-)对于你的例子来说
"Doing-some-test-on-my-%C3%A1ccented-string"https://stackoverflow.com/questions/47355047
复制相似问题