使用正则表达式切换" asc" < - > "降序"不使用MatchEvaluator

时间:2015-02-11 19:01:15

标签: c# regex

我有一系列列排序顺序,例如string sortOrders = "foo asc, bar desc, hi desc";

我想接受输入列名称,如果它已经在我们的排序顺序字符串中,则切换排序方向。

这很容易
string sortOrders = "foo asc, bar desc, hi desc";
string colName = "bar";
Regex.Replace(sortOrders, 
              colName + " (desc|asc)", 
              m => colName + " " + (m.Groups[1].Value == "desc" ? "asc" : "desc"));

// result: "foo asc, bar asc, hi desc"

是否有更简单的版本不使用MatchEvaluator

0 个答案:

没有答案