原始问题
我有一个字符串URL,我需要提取该URL的子域。 我的网址如下:
user[:href] = "https://www.example.com/user-detail/1231-N-F-Albert"
我需要提取:
"https://www.example.com/"
并返回:
"/user-detail/1231-N-F-Albert"
是否有任何方法可以删除主机名并仅返回子域?我尝试过:
URI.parse(user[:href]).host.replace("")
,但返回为空。还有其他方法可以实现吗?
新问题
我已经改变了问题。我需要提取:
"https://www.example.com/user-detail"
并返回:
"1231-N-F-Albert"
有什么办法可以做到这一点?我尝试使用正则表达式,但没有用。
答案 0 :(得分:2)
使用URI解析器并返回路径:
URI.parse("https://www.example.com/user-detail/1231-N-F-Albert").path
#=> "/user-detail/1231-N-F-Albert"
答案 1 :(得分:0)
使用以下代码。希望它干净且易于理解。
setvbuf(stdout, NULL, _IONBF, 0);
答案 2 :(得分:-1)
使用 Ruby#URI
> require 'uri'
# To get path from URL
> URI.parse("https://www.example.com/user-detail/1231-N-F-Albert").path
#=> "/user-detail/1231-N-F-Albert"
# To get last segment of url
> URI.parse("https://www.example.com/user-detail/1231-N-F-Albert").path.split('/').last
#=> "1231-N-F-Albert"