string.Split

 

雖然string.Split方法是一個普遍使用的分割字串方法,

但無奈的是,我每次要呼叫的時候卻又忘記怎麼使用,

所以還是寫一下筆記提醒自已一下。

 

string.Split有六種多載方法如下

一、

public String[] Split(params char[] separator);

參數 separator:可分隔這個字串中的子字串

如下範例

using System;

namespace ConsoleApp1
{
    class Program
    {
        static void Main(string[] args)
        {
            string path = @"C:\Program Files\Adobe\Adobe Photoshop CC 2017";

            string[] result = path.Split(new char[] { '\\' });

            foreach (var item in result)
            {
                Console.WriteLine(item);
            }

            Console.ReadKey();
        }
    }
}

 

二、

public String[] Split(char[] separator, int count);

參數 count:要傳回的子字串之最大數目

using System;

namespace ConsoleApp1
{
    class Program
    {
        static void Main(string[] args)
        {
            string path = @"C:\Program Files\Adobe\Adobe Photoshop CC 2017";

            string[] result = path.Split(new char[] { '\\' }, 2);

            foreach (var item in result)
            {
                Console.WriteLine(item);
            }

            Console.ReadKey();
        }
    }
}

 

三、

public String[] Split(char[] separator, int count, StringSplitOptions options);

參數 options:表示要省略傳回陣列中的空陣列項目,或是要包含傳回陣列中的空陣列項目。

 

1、傳回空陣列項目

using System;

namespace ConsoleApp1
{
    class Program
    {
        static void Main(string[] args)
        {
            string path = @"C:\Program Files\Adobe\Adobe Photoshop CC 2017\";

            string[] result = path.Split(new char[] { '\\' }, 5, StringSplitOptions.None);

            foreach (var item in result)
            {
                Console.WriteLine(item);
            }
            Console.WriteLine("請按任一鍵結束");
            Console.ReadKey();
        }
    }
}

 

2、省略傳回陣列中的空陣列項目

using System;

namespace ConsoleApp1
{
    class Program
    {
        static void Main(string[] args)
        {
            string path = @"C:\Program Files\Adobe\Adobe Photoshop CC 2017\";

            string[] result = path.Split(new char[] { '\\' }, 5, StringSplitOptions.RemoveEmptyEntries);

            foreach (var item in result)
            {
                Console.WriteLine(item);
            }
            Console.WriteLine("請按任一鍵結束");
            Console.ReadKey();
        }
    }
}

 

四、

public String[] Split(char[] separator, StringSplitOptions options);

請參考先前例子,不再舉例。

 

五、

public String[] Split(String[] separator, int count, StringSplitOptions options);

請參考先前例子,不再舉例。

 

六、

public String[] Split(String[] separator, StringSplitOptions options);

請參考先前例子,不再舉例。

 

參考資料:

String.Split 方法