需要编写一个程序将URL精简为仅协议和域

时间:2018-08-17 21:09:38

标签: vb.net

我正在尝试创建一个可以执行一些不同的URL处理任务的程序。这些任务之一是获取URL并删除协议和域以外的所有内容。以下是一些示例输入和预期输出。

示例输入:

http://www.exp.org/forum/member.php?1-Morrus&language=uk
http://expl.com/forum/member.php/1-%D0%90%D0%B4%D0%BC%D0%B8%D0%BD?langid=5

预期输出:

http://www.exp.org/
http://expl.com/

这是我正在构建的UI的屏幕截图:
Screenshot of UI in VS 2012

1 个答案:

答案 0 :(得分:1)

在没有进一步说明程序其他部分的情况下,我将您的问题缩小为仅分析URL并剥离不想要的部分。 Uri类可以使这一点变得容易一些。这是一些示例代码,显示了如何以输入URL开头并到达目标输出。做到这一点的另一种方法是简单地遍历字符串以查找并计算斜杠的数目,然后创建一个子字符串,但是我认为这种方法更干净。

Dim uri As New Uri("http://www.exp.org/forum/member.php?1-Morrus&language=uk")
Dim cleaned As String = String.Format("{0}://{1}/", uri.Scheme, uri.Host)