连接字符串数组的其余部分
本文关键字:余部 字符串 数组 连接 | 更新日期: 2023-09-27 17:59:58
private static string SetValue(string input, string reference)
{
string[] sentence = input.Split(' ');
for(int word = 0; word<sentence.Length; word++)
{
if (sentence[word].Equals(reference, StringComparison.OrdinalIgnoreCase))
{
return String.Join(" ", sentence.subarray(word+1,sentence.Length))
}
}
}
如何轻松地完成sentence.subarray(word+1,sentence.Length)
,或者用另一种方式来完成?
String.Join
有一个专门用于此的过载:
return String.Join(" ", sentence, word + 1, sentence.Length - (word + 1));
您可以将过载Where
与index
:一起使用
return string.Join(" ", sentence.Where((w, i) => i > word));
如果您正在严格寻找独立于字符串的子数组解决方案。Join((函数,并且您使用的是支持Linq的.NET版本,那么我可以推荐:
sentence.Skip(word + 1);
或者,您可以使用SkipWhile
而不是for循环。
private static string SetValue(string input, string reference)
{
var sentence = input.Split(" ");
// Skip up to the reference (but not the reference itself)
var rest = sentence.SkipWhile(
s => !s.Equals(reference, StringComparison.OrdinalIgnoreCase));
rest = rest.Skip(1); // Skip the reference
return string.Join(" ", rest);
}