繁体   English   中英

在指定索引处开始的数组中查找空字符串

[英]Finding an empty string in an array beginning at a specified index

我想检查指定索引后的数组中是否存在空字符串。

假设我有这个数组:

string[] values = {"1", "2", "2", "4", "", "", ""};

我想检查索引3(其中值为4)是否存在空值。 我想做到这一点而不将其在两个不同的字符串数组之间拆分。

更具体地说,我的示例使用名为files的数组

string[] files;

我想检查从数组索引8到数组索引28是否有空值。

您可以使用LINQ来做到这一点:

files.Skip(index).Any(s => s == string.Empty);

您可以只使用for循环。 尝试这个:

for(int i = specifiedIndex; i < array.Length; i++)
{
    if(array[i].Equals(""))
        return true;
}
return false;

如果索引处或索引后的任何值为空,则将返回true。 如果到达末尾而没有找到一个,则返回false。

您可以根据自己的需要进行调整。 您不必一定要循环数组的末尾,您也可以将结束条件设置为指定的索引,例如,是否要检查索引5和10之间的空字符串,而不管是否存在在此之前或之后的任何时间。

使用LINQ:-

string[] Values = { "1", "2", "2", "4", "", "", "" };
            int specifiedIndex = 3;
            var query1 = Values.Skip(specifiedIndex).Select((v, index) => new { v, index }).Where(x => x.v == String.Empty).Select(z => z.index + specifiedIndex);

            foreach (var val in query1)
            {
                Console.WriteLine(val);
            }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM