现在我有这个代码:
@category.name.gsub(' ', '-').gsub('--','-').gsub('--','-')
id是做什么的:
如果我有名称为sometext sometext
的类别,则会将所有空格字符更改为-
短划线字符。 sometext-someteext
(我将其用于网址建设)
.gsub('--','-').gsub('--','-')
- 这个部分我需要的是名字之类的情况
sometext - sometext
因此,如果没有此部分,我的方法会向我提供错误的输出,例如sometext---sometext
那么将3个gsubs重写为一个更优雅的方法是什么?
答案 0 :(得分:0)
正规救援:
.gsub(/ \-+ /, ' - ')
答案 1 :(得分:0)
ActiveSupport :: Inflector包含parameterize,这对于构建网址更为通用。
> 'sometext - sometext'.parameterize
=> "sometext-sometext"