C# String Split()

Split() 方法在指定的 and 分隔符处将字符串拆分,并返回其子字符串。

示例

using System;  
namespace CsharpString {  
  class Test {
    public static void Main(string [] args) {

      string text = "C# is a fun programming language";

// split string string[] result = text.Split(" ");
Console.Write("Result: "); foreach(String str in result) { Console.Write(str + ", "); } Console.ReadLine(); } } } // Output: Result: C#, is, a, fun, programming, language,

Split() 语法

字符串 Split() 方法的语法是

Split(String separator, Int32 count, StringSplitOptions options)

在这里,Split()String 类的一个方法。


Split() 参数

Split() 方法接受以下参数

  • separator - 分隔字符串中的子字符串
  • count - 控制生成的子字符串的数量
  • options - 指定是省略空数组元素还是包含它们

Split() 返回值

Split() 方法返回一个包含子字符串的字符串数组。


示例 1:将字符串拆分为数组

using System;  
namespace CsharpString {  
  class Test {
    public static void Main(string [] args) {

      string text = "a::b::c::d::e";

// split string at :: string[] result = text.Split("::");
foreach(string str in result) { Console.WriteLine(str); } Console.ReadLine(); } } }

输出

a
b
c
d
e

这里,我们以 :: 为分隔符拆分字符串。由于没有传递 count 参数,返回的数组包含所有子字符串。


示例 2:使用多个字符拆分字符串

using System;  
namespace CsharpString {  
  class Test {
    public static void Main(string [] args) {

      string text = "a b,c.d/e";

// split string string[] result = text.Split(' ', ',', '.','/');
foreach(string str in result) { Console.WriteLine(str); } Console.ReadLine(); } } }

输出

a
b
c
d
e

这里,我们以字符 ' '',''.''/' 为分隔符拆分字符串。


示例 3:按字符串或字符串数组分隔拆分字符串

using System;  
namespace CsharpString {  
  class Test {
    public static void Main(string [] args) {

      string text = "Programiz is developed for programmers";
      string[] separators = {"is", "for"};

// separates string at separators string[] result = text.Split(separators, StringSplitOptions.None);
foreach(string str in result) { Console.WriteLine(str); } Console.ReadLine(); } } }

输出

Programiz
 developed
 programmers

在上面的示例中,请注意这一行:

string[] result = text.Split(separators, StringSplitOptions.None);

这里,

  • separators - 用于在 "is""for" 处拆分字符串文本的字符串数组
  • StringSplitOptions.None - 在返回的数组中包含空数组元素

示例 4:返回指定数量的子字符串

using System;  
namespace CsharpString {  
  class Test {
    public static void Main(string [] args) {

      string text = "a::b::c::d::e::f";

      string[] separators = {"::"};
  
// create a maximum of 2 substrings string[] result = text.Split(separators, 2, StringSplitOptions.None);
foreach(string str in result) { Console.WriteLine(str); } Console.ReadLine(); } } }

输出

a
b::c::d::e::f

在上面的示例中,请注意这一行:

string[] result = text.Split(separators, 2, StringSplitOptions.None);

这里,我们将 count 指定为 2,因此它最多返回 2 个子字符串。

你觉得这篇文章有帮助吗?

我们的高级学习平台,凭借十多年的经验和数千条反馈创建。

以前所未有的方式学习和提高您的编程技能。

试用 Programiz PRO
  • 交互式课程
  • 证书
  • AI 帮助
  • 2000+ 挑战