【发布时间】:2018-01-25 14:54:02
【问题描述】:
我正在尝试使用 C# 从字符串中删除空的 url 类型参数。我的代码示例在这里。
public static string test ()
{
string parameters = "one=aa&two=&three=aaa&four=";
string pattern = "&[a-zA-Z][a-zA-Z]*=&";
string replacement = "";
Regex rgx = new Regex(pattern);
string result = rgx.Replace(parameters, replacement);
return parameters;
}
public static void Main(string[] args)
{
Console.WriteLine(test());
}
我试过rextester中的代码
输出:one=aa&two=&three=aaa&four=
预期输出:one=aa&three=aaa
【问题讨论】:
-
改用
(?:^|&)[a-zA-Z]+=(?=&|$)。 -
为什么要使用正则表达式?你可以使用HttpUtility.ParseQueryString