Ruby on rails 如何在Rails/Ruby中操作URL?
我想操纵一个URL,只获取基本站点名称 例如,我有一个URL:Ruby on rails 如何在Rails/Ruby中操作URL?,ruby-on-rails,ruby,Ruby On Rails,Ruby,我想操纵一个URL,只获取基本站点名称 例如,我有一个URL: http://stackoverflow.com/questions/ask, http://stackoverflow.com/questions/4988199/rails-3-mechanize-socketerror-getaddrinfo-host-or-name-not-known http://www.google.dk/search?q=ruby+string+manipulation 它应该只返回stacko
http://stackoverflow.com/questions/ask,
http://stackoverflow.com/questions/4988199/rails-3-mechanize-socketerror-getaddrinfo-host-or-name-not-known
http://www.google.dk/search?q=ruby+string+manipulation
它应该只返回stackoverflow
另外,如果我有URL:
http://stackoverflow.com/questions/4988199/rails-3-mechanize-socketerror-getaddrinfo-host-or-name-not-known
它还应仅为堆栈溢出
最后一个示例,如果我有URL:
http://stackoverflow.com/questions/ask,
http://stackoverflow.com/questions/4988199/rails-3-mechanize-socketerror-getaddrinfo-host-or-name-not-known
http://www.google.dk/search?q=ruby+string+manipulation
它应该是google
除了URL的域名之外,我如何去除所有内容?最简单的解决方案可能是使用gem为您解决这个问题。安装后,只需执行以下操作:
url = Domainatrix.parse("http://www.google.dk/search?q=ruby+string+manipulation")
url.domain # returns 'google'
在他们的github页面上还有一些代码示例和选项。最简单的解决方案可能是使用gem为您解决这个问题。安装后,只需执行以下操作:
url = Domainatrix.parse("http://www.google.dk/search?q=ruby+string+manipulation")
url.domain # returns 'google'
他们的github页面上还有一些代码示例和选项。如果您不想使用单独的gem,可以尝试一些简单的正则表达式
(https?:\/\/)?(www\.)?([^\.]+).*
如果您不想使用单独的gem,可以尝试一些简单的正则表达式
(https?:\/\/)?(www\.)?([^\.]+).*
您可以使用std Ruby发行版中已有的内容:
irb(main):001:0> require "uri"
=> true
irb(main):002:0> a = URI.parse("http://www.google.com")
=> #<URI::HTTP:0x3b3eb78 URL:http://www.google.com>
irb(main):003:0> a.host
=> "www.google.com"
irb(main):004:0>
irb(main):001:0>需要“uri”
=>正确
irb(main):002:0>a=URI.parse(“http://www.google.com")
=> #
irb(主):003:0>a.host
=>“www.google.com”
irb(主要):004:0>
您可以使用std Ruby发行版中已有的内容:
irb(main):001:0> require "uri"
=> true
irb(main):002:0> a = URI.parse("http://www.google.com")
=> #<URI::HTTP:0x3b3eb78 URL:http://www.google.com>
irb(main):003:0> a.host
=> "www.google.com"
irb(main):004:0>
irb(main):001:0>需要“uri”
=>正确
irb(main):002:0>a=URI.parse(“http://www.google.com")
=> #
irb(主):003:0>a.host
=>“www.google.com”
irb(主要):004:0>