c#查询字符串中的通配符

本文关键字:通配符 字符串 查询 | 更新日期: 2023-09-27 18:15:20

不知道该怎么问,也不知道能不能做到。

我有一个ID号,我想测试它是否匹配URL查询字符串中的ID,该字符串存储在我正在使用的API中。

因此,如果我想要搜索的URL包含http://www.testurl.com/page?key=55555,如果该URL '包含'该数字,我只想放入我的http请求。测试url是否完全相等已经证明是有问题的,因为存储的查询字符串中有很多其他信息。

通配符查询字符串甚至可能,考虑到我编码html已经?任何帮助都是感激的。谢谢你!

c#查询字符串中的通配符

string[] myUrls = new string[] {
  "http://www.testurl.com/page?key=55555",
  "http://www.testurl.com/page?key=555556789",
  "http://www.testurl.com/page?foo=bar&key=55555&baz=938355555"};
string myToken = "key=55555";
bool exists;
foreach(string url in myUrls)
{
    System.Uri uri = new System.Uri(url);
    string q = uri.GetComponents(UriComponents.Query, UriFormat.Unescaped);
    if (q.Split('&').Any(x=>x== myToken))
    {
       Console.WriteLine(string.Format("found it in '{0}'", url));
    }
}

如果您可以访问QueryString,您可以这样做:

if (HttpContext.Current.Request.QueryString["key"].ToLower() == "5555")
    //do something