1

我使用以下代码从 URL中删除http://www./或删除:dev.

Uri uri = new Uri(this.Referrer);
    if (uri != null )
        return uri.GetLeftPart(UriPartial.Authority).Replace("http://dev.", "").Replace("http://www.", "").Replace("http://", "");
    else
        return null;

我不喜欢我依赖这个.Replace()功能。我有一个错误很长一段时间,直到我意识到this.Referrer没有子域。

有没有更优雅的方法来做到这一点?

4

1 回答 1

1

您可以尝试使用这样的正则表达式:

http:\/\/(.*?)[.?]|http:\/\/

而不是执行多次替换。这将捕获您遇到的任何其他子域。我不知道另一种方式可以实现这一目标。

这实际上并没有尽可能短,但我想让它保持可读性。

于 2013-09-05T19:27:55.443 回答