【问题标题】:check whether a string exists in list using for loop in c#在c#中使用for循环检查列表中是否存在字符串
【发布时间】:2017-09-06 10:00:58
【问题描述】:

我有一个包含字符串值的列表arrString。我需要使用 C# 中的 for 循环检查字符串 lookupvalue.Longname 是否存在于列表中。

 for(int i = 0 ;i < ResoCustomFields.LongnameNotToBeTaken.Count ;i++)
 {
    string myStringList = ResoCustomFields.LongnameNotToBeTaken[i].ToString();
    var arrString = myStringList.Trim('(',')').Split(',').ToList();
    if(arrString.Contains(resoField))
    {
    // if(!arrString[i].Any(str=>str.ToString().Contains(lookupValue.LongName)))
    // if(lookupValue.LongName.Contains(arrString.ToString()))
    //(!arrString.Any(str => str.Equals(lookupValue.LongName)))
    // if(!arrString.Equals(lookupValue.LongName))                                                      
    {
    }
}

【问题讨论】:

  • if (ResoCustomFields.LongnameNotToBeTaken.Any(line =&gt; line.Trim('(',')').Split(',').Any(item =&gt; item == resoField))) {...}
  • 我试过 arrString[i].Contains(lookupValue.LongName).. 还是不行
  • 我已经完成了修剪和分割..
  • 能举一个arrString和resoField的小例子吗?

标签: c#


【解决方案1】:

你可以试试下面的代码:

int pos = Array.IndexOf(arrString, lookupValue.LongName);
if (pos > -1)
{
//// DO YOUR STUF
}

以下是参考:

Checking if a string array contains a value, and if so, getting its position

【讨论】:

  • 我试过了,但索引总是-1,即使字符串值包含在列表中。
猜你喜欢
  • 2021-04-18
  • 1970-01-01
  • 1970-01-01
  • 2023-03-14
  • 1970-01-01
  • 1970-01-01
  • 2017-10-17
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多