基于分隔符数组中的字符将字符串拆分为多个子字符串。
String value = "This is a short string."; Char delimiter = 's'; String[] substrings = value.Split(delimiter); foreach (var substring in substrings) Console.WriteLine(substring);这里过于基础,不再赘述
基于数组中的字符串将一个字符串拆分成最大数量的子字符串。 可以指定子字符串是否包含空数组元素。
string[] Split (string[] separator, int count, StringSplitOptions options); //separator:分隔此字符串中子字符串的字符串数组、不包含分隔符的空数组或 null。 //count:要返回的子字符串的最大数量。 //options:要省略返回的数组中的空数组元素,则为 RemoveEmptyEntries;要包含返回的数组中的空数组元素,则为 None。它返回一个数组,其元素包含此字符串中的子字符串,这些子字符串由 separator 中的一个或多个字符串分隔。
在参数设置为的情况下调用方法 options StringSplitOptions.RemoveEmptyEntries 。 这可以防止返回的数组包含 String.Empty 表示标点符号和空白字符之间的空子字符串匹配项的值。
如果 count 参数为零,或者 options 参数为 RemoveEmptyEntries ,并且此实例的长度为零,则返回空数组。
如果 count 此实例中的子字符串多于个子字符串,则返回 count 值的第一个减1元素返回第一个减号子字符串 count ,并且在返回值的最后一个元素中返回此实例中剩余的字符。
如果 count 大于子字符串的数目,则将返回可用的子字符串,并且不会引发异常。
和上一个方法类似
分隔符字符串不包含在返回数组的元素中。 例如,如果 separator 数组包含字符串 "--",而当前字符串实例的值为 "aa--bb-cc",则该方法将返回包含三个元素的数组: "aa"、"bb" 和 "cc"。
如果 options 参数为StringSplitOptions.None ,并且两个分隔符相邻,或在此实例的开头或结尾找到了分隔符,则对应的数组元素包含 String.Empty 。 例如,如果 separator 包含两个元素 "-" 和 " _ ",则字符串实例的值为 "- _ aa- _ ",而参数的值 options 为 None ,则该方法返回一个字符串数组,其中包含以下五个元素:
String.Empty,它表示位于索引0处的 "-" 子字符串之前的空字符串。
String.Empty,它表示位于索引0处的 "-" 子字符串与索引1处的 "" 子字符串之间的空字符串。
"aa"
String.Empty,它表示位于索引4的 "" 子字符串后面的空字符串。
String.Empty,它表示位于索引5的 "-" 子字符串之后的空字符串。
string[] strnew = strold.Split(new string[] { "(","," }, StringSplitOptions.RemoveEmptyEntries);