我可以使用什么正则表达式从Ruby中的URL获取域名?

anu*_*uya 6 ruby regex

我正在尝试构建一个正则表达式来提取给定URL的域.

对于:

http://www.abc.google.com/
http://abc.google.com/
https://www.abc.google.com/
http://abc.google.com/
Run Code Online (Sandbox Code Playgroud)

应该给:

abc.google.com
Run Code Online (Sandbox Code Playgroud)

Ale*_*yne 25

URI.parse('http://www.abc.google.com/').host
#=> "www.abc.google.com"
Run Code Online (Sandbox Code Playgroud)

不是正则表达式,但可能比我们在这里提出的任何东西都更强大.

URI.parse('http://www.abc.google.com/').host.gsub(/^www\./, '')
Run Code Online (Sandbox Code Playgroud)

如果你想删除它www.,这将工作,而不会引起任何错误,如果www.不存在.