C#学习教程:比较2个url的最佳方法做这个的最好方式是什么?条件:1)应该排除httpschemes。2)'foo.com/a/b'和'foo.com/a'应该匹配。您应该使用Uri.Compare方法。下面是一个比较两个具有不同方案的URI的示例。publicstaticvoidTest(){Uriuri1=newUri("http://www.foo.com/baz?bar=1");Uriuri2=newUri("https://www.foo.com/BAZ?bar=1");varresult=Uri.Compare(uri1,uri2,UriComponents.Host|UriComponents.PathAndQuery,UriFormat.SafeUnescaped,StringComparison.OrdinalIgnoreCase);调试断言(结果==0);}使用c#URI类来表示您的URI,然后使用uri.compare函数如果我了解您要完成的任务,执行此操作的函数可能类似于boolCompare(stringurl1,stringurl2){varstr1=url1.Replace("http://",String.Empty).ToLower();varstr2=url2.Replace("http://",String.Empty).ToLower();返回(str1.Contains(str2)||str2。包含(str1));由于你只举了一个例子,所以很难看出你所说的“匹配”是什么意思。在这种情况下,您可以这样做。boolUrlsMatch(stringfirst,stringsecond){return!(first.ToLower().StartsWith("http://"))&&first.ToLower().StartsWith(second.ToLower());尽管您可能还想以相反的方式检查它们。您也可以使用Uri.Compare,但如果不知道您对平等的确切要求,就很难知道它是否完全正确。以上就是C#学习教程:比较2个url分享所有内容的最佳方式。如果对你有用,需要进一步了解C#学习教程,希望大家多多关注。本文收集自网络,不代表立场。涉及侵权,请点击维权联系管理员删除。如需转载请注明出处:
