当前位置: 首页 > 编程语言 > C#

如何加入一个字符串数组,但先删除数组中的空元素?分享

时间:2023-04-10 22:29:16 C#

我如何连接一个字符串数组,但首先删除数组中的空元素?我使用以下内容:returnstring.Join("n",parts);Parts有7个条目,但其中两个是空字符串“”。我如何先删除这两个条目,然后加入其余五个?您可以在LINQ中使用Where来选择非空字符串:returnstring.Join("n",parts.Where(s=>!string.IsNullOrEmpty(s)));另一种方法是使用StringSplitOptions.RemoveEmptyEntries:例如stringyourString="The|quick||brownfox|is|here";char[]分隔符=newchar[]{'|'};字符串结果=string.Join(“,”,yourString.Split(delimiter,StringSplitOptions.RemoveEmptyEntries));这给出了:是的,快速的,棕色的,狐狸,是的,在这里@StefanSteiger:stringyourString="echo'foo'|sed'/foo/d;'";这给出:echo'foo',sed'/foo/d;'这是我所期望的。查看它的dotnetfiddle。尝试使用LINQstring[]hello=newstring[]{"ads","zxc","wer","","wer","","243"};stringnewString=string.Join("n",hello.Where(x=>x.Trim().Length!=0));MessageBox.Show(newString);或返回string.Join("n",hello.Where(x=>x.Trim().Length!=0));要在.NET2.0(没有LINQ)中执行此操作,例如对于没有为其编写函数的ReportingServices:C#stringa="",b="b",c="",d="d",e="";stringlala=string.Join("/",string.Join("u0008",newstring[]{a,b,c,d,e}).Split(newchar[]{'u0008'},System.StringSplitOptions.RemoveEmptyEntries));System.Console.WriteLine(lala);VB.NETDimaAsString="",bAsString="b",cAsString="",dAsString="d",eAsString=""DimlalaAsString=String.Join("/",String.Join(vbBack,NewString(){a,b,c,d,e}).Split(NewChar(){ControlChars.Back},System.StringSplitOptions.RemoveEmptyEntries))System.Console.WriteLine(lala)这假定字符串退格符不会出现在您的字符串中(通常应该是true,因为您不能简单地从键盘输入该字符)。以上是C#学习教程:如何加入一个字符串数组,但先删除数组中的空元素?如果所有分享的内容对你有用,需要进一步了解C#学习教程,希望大家多多关注。本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处: