Alf*_*red 1 ruby regex sinatra
我有一个sinatra应用程序,我计划在飞行中制作一个油炸的网址.我有一个看起来像这样的正则表达式的函数,但它不会将'空格'转换为'破折号',''转换为' - '.
def self.make_slug(title)
title.downcase.gsub(/ /, '-').gsub(/[^a-z0-9_]/, '').squeeze('-')
end
Run Code Online (Sandbox Code Playgroud)
提前致谢!
更新
现在我也试图将åä改为a和ö到o,我的代码看起来像这样但不起作用,任何想法?
gsub(/[åä]/, 'a')
gsub(/[ö]/, 'o')
Run Code Online (Sandbox Code Playgroud)
title.downcase.gsub(/\s+/, '-').gsub(/[^a-z0-9_-]/, '').squeeze('-')
这将采用给定的标题(My&Title5 :)和:
*downcase it(my&title5 :)
*用 - (my - & - title5 :)替换一个或多个空白字符
*替换非字母/数字字符(my - title5)
*替换多次出现 - with - (my-title5)
我希望这有帮助.