列出具有特定 StringComparison 的字符串的模式匹配?

问题描述 投票:0回答:1

我有一个例子,有一些字符串的列表。我想检查是否正好有 4 个项目以及项目 0 和项目 2 是否具有某些值。

但是当我写这段代码时...

var a = new List<string>();
if(a is ["aSdfüü", _, "1.1", _] test){
    // do something
}

...它被编译为:

List<string> list = new List<string>();
if (list != null && list.Count == 4 && list[0] == "aSdfüü")
{
    bool flag = list[2] == "1.1";
}

因此,字符串与“==”进行比较,我找不到像 StringComparison.OrdinalIgnoreCase 或类似的方法来指定 StringComparison。

是否有一种优雅的方式将列表模式匹配和特定字符串比较结合起来?

c# string pattern-matching
1个回答
0
投票

不幸的是,这是不可能的。

© www.soinside.com 2019 - 2024. All rights reserved.