C#:SplittingaStringWithoutReturnanEmptyString我有一个字符串:a="1;2;3;"我想这样拆分它:foreach(stringbina.split(';'))我怎样才能确保只返回3而不是“空字符串”?如果我拆分1;2;3,那么我会得到我想要的。但是如果我拆分1;2;3;然后我得到一个额外的“空字符串”。我听取了建议并这样做了:string[]batchstring=batch_idTextBox.Text.Split(';',StringSplitOptions.RemoveEmptyEntries);但是,我收到以下错误:Error1'string.Split(paramschar[])'containssomeinvalidargumentsC:DocumentsandSettingsagordonMyDocumentsVisualStudio2008ProjectslomdbEnterDataDataEntryDAL.cs1836EnterDataError2Argument'2':无法从'System.StringSplitOptions'转换为'char'C:DocumentsandSettingsagordonMyDocumentsVisualStudio2008ProjectslomdbEnterDataDataEntryDAL.cs1868EnterDataString.Split在包含任何StringSplitOptions时采用数组:string[]batchstring=batch_idTextBox.Text.Split(new[]{';'},StringSplitOptions.RemoveEmptyEntries);如果不需要选项,语法会变得更简单:string[]batchstring=batch_idTextBox.Text.Split(';');使用StringSplitOptions。a.Split(newchar[]{';'},StringSplitOptions.RemoveEmptyEntries);将StringSplitOptions.RemoveEmptyEntries传递给Split方法。编辑Split方法没有用单个字符拆分的重载。您需要指定一个字符数组。foo.Split(newchar[]{';'},StringSplitOptions.RemoveEmptyEntries);不知道拆分选项。如果你不这样做,你可以...a.Split(';').Where(s=>s.Length>0).ToArray();试一试:stringtest="1;2;3;";test=String.Join(",",test.TrimEnd((char)59).Split((char)59));字符串测试="1;2;3;";test=String.Join(",",test.TrimEnd(';').Split(';'));使用a.Split(new[]{';'},StringSplitOptions.RemoveEmptyEntries);.Split有4个重载,.Split两个不支持StringSplitOptions并使用params格式(因此您不需要创建拆分器数组),其中两个支持StringSplitOptions并需要一个char或string数组。stringline="你好!祝你有美好的一天。"string[]substr=line.Split(new[]{''},2);上面的代码将根据第一个空格将行拆分为两个子字符串。substr[0]将有“你好!”和substr[1]将有“美好的一天”。Split中的2是一个整数计数器,您可以根据需要传递任何值。以上是C#学习教程:C#:Splittingastringwithoutreturnanemptystring。如果对大家有用,需要进一步了解C#学习教程,希望大家多加关注——本文来自网络合集,不代表立场,如涉及侵权,请点击有权联系管理员删除。如需转载请注明出处:
