gpt4 book ai didi

c# - 在 C# 中动态评估字符串条件

转载 作者:太空狗 更新时间:2023-10-29 21:30:55 24 4
gpt4 key购买 nike

我有一个字符串集合。我需要从这个集合字符串中找出满足某些条件的字符串,例如该字符串包含 A 和 B 或 C。这些条件由用户指定,因此它们是动态的。在 Linq 中它应该是这样的,

List<String> items = new List<string> { "sdsdsd", "sdsd", "abc"};

var query = from item in items
where item.Contains("a") && item.Contains("b") || item.Contains("c")
select item;

我想使 where 条件动态化,以便它可以处理用户的任何输入。是否可以在不使用任何外部库的情况下在 C# 中执行此操作。也许使用 Linq 或其他内置于 .Net 框架中的东西。

谢谢,加里

最佳答案

虽然您不想使用外部库,但有一个非常棒,那就是 PredicateBuilder .谓词生成器允许您建立一组谓词来匹配项目,例如:

var predicate = PredicateBuilder.True<string>();
predicate = predicate
.And(p => p.Contains("a"))
.And(p => p.Contains("b"));

var matches = items.Where(predicate);

关于c# - 在 C# 中动态评估字符串条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3186170/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com