Ruby 为什么先 split,然后 join?

xiaoronglv · October 20, 2012 · Last by lgn21st replied at October 20, 2012 · 3206 hits
if !self.url.blank?
    url = self.url.gsub(/http[s]{0,1}:\/\//,'').split('/').join("/")
    self.url = "http://#{url}"
  end

为什么先 split,然后 join。

作者@xdite 这样做的目的是什么。

https://github.com/rubytaiwan/ruby-taiwan/blob/production/app/models/site.rb

去掉结尾的 /

目测结果:

"http://google.com".gsub(/http[s]{0,1}:\/\//,'') #是为了消灭 'http' 和 ’https'
"http://google.com/foobar/".split('/').join("/") #是为了把尾部的'/'消灭

#1 楼 @yesmeck 还是你回复的快。

如果是我的话,我会用 "http://google.com/foobar/".chomp('/')

#5 楼 @fredwu +1

这种方式好。

You need to Sign in before reply, if you don't have an account, please Sign up first.