我知道如何从数组中删除元素,如果我知道它们是什么。如何从字符串数组中删除未知文本?
此数组中的“客户端”是用户输入的字符串。我想删除前两个字,但我不知道他们会是什么。它总是不同的。
string[] words = Receipt.Split(' ',',','-');
谢谢。
我知道如何从数组中删除元素,如果我知道它们是什么。如何从字符串数组中删除未知文本?
此数组中的“客户端”是用户输入的字符串。我想删除前两个字,但我不知道他们会是什么。它总是不同的。
string[] words = Receipt.Split(' ',',','-');
谢谢。
如果总是要删除的前两个,LINQ可能提供最简单的方法:
请注意,您无法从阵列本身的“删除”的价值观,作为数组在创建后始终具有固定大小。上面的代码创建了一个新的阵列,除了前两个单词之外的所有字符。
当然,你可以做到这一切一气呵成:
string[] words = Receipt.Split(' ', ',', '-').Skip(2).ToArray();
个人而言,我会经常使用一个List<string>
代替,因为它更灵活:
List<string> words = Receipt.Split(' ', ',', '-').Skip(2).ToList();
如果你只是要重复它,你不需要将它转换为数组或列表:
IEnumerable<string> words = Receipt.Split(' ', ',', '-').Skip(2);
string[] words = Receipt.Split(' ',',','-').Skip(2).ToArray();
谢谢你详细的a nswer – Rob