C# 如何检查列表是否包含部分值?

C# 如何检查列表是否包含部分值?,c#,list,C#,List,我想知道是否可以检查列表是否包含值的一部分。如果找到该值,则返回该值 例如,如果列表的值为12345、14567和14785,我想搜索列表是否包含“123”, 这可能吗 如果是,是否可以返回所有包含“123”的值 以下是我向列表中添加值的方式: recordFailedPO.Add(Convert.ToInt32(dataGWHeight.Rows[0].Cells[0].Value)); 这是我检查值的一部分的方式: if (recordFailedPO.Contai

我想知道是否可以检查列表是否包含值的一部分。如果找到该值,则返回该值

例如,如果列表的值为12345、14567和14785,我想搜索列表是否包含“123”, 这可能吗

如果是,是否可以返回所有包含“123”的值

以下是我向列表中添加值的方式:

recordFailedPO.Add(Convert.ToInt32(dataGWHeight.Rows[0].Cells[0].Value));
这是我检查值的一部分的方式:

            if (recordFailedPO.Contains(currentPO))
            {
               // Code Here
            }
其中currentPO是用户输入


感谢您的帮助

在这种情况下,您可以使用string
Contains
方法

var containsNumber = recordFailedPO.Where(x => x.ToString().Contains("123"));

在这种情况下,可以使用string
Contains
方法

var containsNumber = recordFailedPO.Where(x => x.ToString().Contains("123"));

请先尝试转换为字符串

int res = recordFailedPO.Find(x=>x.ToString().Contains(currentPO));
所有值都可以通过
FindAll
返回

 List<int> res = recordPO.FindAll(x=>x.ToString().Contains(currentPO)):
List res=recordPO.FindAll(x=>x.ToString().Contains(currentPO)):

尝试在之前转换为字符串

int res = recordFailedPO.Find(x=>x.ToString().Contains(currentPO));
所有值都可以通过
FindAll
返回

 List<int> res = recordPO.FindAll(x=>x.ToString().Contains(currentPO)):
List res=recordPO.FindAll(x=>x.ToString().Contains(currentPO)):

不能将它们作为整数处理。将它们存储为,或将它们转换为字符串并使用
。其中(s=>s.Contains(currenyPO))
。请参阅,而不是将它们作为整数处理。将它们存储为,或将它们转换为字符串并使用
。其中(s=>s.Contains(currenyPO))
。看见