use*_*641 0 .net c# arrays indexing contain
在我的程序中,我有一个文本,我将分成一行数组来分别修改行.对于一个修改,我需要找到文本中值的最后一个索引,以在下面的行中插入一个新值.
例:
text=["I like bananas",
"I like apples",
"I like cherries",
"I like bananas",
"I like apples"]
value: "bananas"
Run Code Online (Sandbox Code Playgroud)
我已经尝试过使用:
int pos = Array.FindIndex(text, row => row.Contains(value));
if (pos > -1)
{
//insert line at pos
}
Run Code Online (Sandbox Code Playgroud)
但这似乎又回到了我第一次出现的指数."lastIndexOf()"对我来说似乎不是正确的命令,因为它会查找给定值和数组中项目的相等性.
我是做错了还是有另一个命令,在这种情况下使用?
我不明白Array.FindLastIndex()
方法有什么问题.它的工作原理完全相同:
string value = "bananas";
string[] arr =
{
"I like bananas",
"I like apples",
"I like cherries",
"I like bananas",
"I like apples"
};
Console.WriteLine(Array.FindLastIndex(arr, x => x.Contains(value)));
Run Code Online (Sandbox Code Playgroud)
此代码适用于我并输出"3".