如何知道字符串是否包含列表中的任何字符串

本文关键字:字符串 列表 任何 包含 何知道 是否 | 更新日期: 2023-09-27 18:18:03

我有这个列表:

List<string> lst01 = new List<string>();
lst01.Add("1");
lst01.Add("999");
lst01.Add("888");
List<string> lst02 = new List<string>();
lst02.Add("4");
lst02.Add("5");
lst02.Add("6");
string myString = "123";

我想知道myString是否包含列表中的任何字符串。

对于第一个列表,该方法将返回true,对于第二个列表,该方法将返回false。

如何知道字符串是否包含列表中的任何字符串

 var result1 = lst01.Any(v=> myString.Contains(v));
 var result2 = lst02.Any(v=> myString.Contains(v));

尝试下面的代码r1返回true, r2返回false:-

                List<string> lst01 = new List<string>();
                lst01.Add("1");
                lst01.Add("999");
                lst01.Add("888");
                List<string> lst02 = new List<string>();
                lst02.Add("4");
                lst02.Add("5");
                lst02.Add("6");
                string myString = "123";
                var r1 = lst01.Any(w => myString.Contains(w));
                var r2 = lst02.Any(w => myString.Contains(w));
string myString = "123";
for (int i=0, i<lst01.size , i++){
   if (myString.Contains(lst01[i]))
   {
       return true;
   }}
return false;

您可以尝试如下操作:

bool contains = lst01.Any(x=>x.myString.Contains(x))||list02.Any(x=>x.myString.Contains(x))

或者这个

bool containedInFirstList =  lst01.Any(x=>x.myString.Contains(x));
bool containedInSecondList = lst02.Any(x=>x.myString.Contains(x));

第二种方法分别查看列表,无论是否包含在您正在查找的列表中,您将获得truefalse

第一种方法最初做的是相同的,但是在最后得到的结果的逻辑或,如果你遵循第二种方法。