比如說有一個字串是
我是@豬與帥哥$的重合體^哈哈哈
我要把@$^給分割掉 這時候用Split這方法超好用
來看一下MSDN的語法,有如下幾種
String.Split 方法
來看第一個程式範例
語法如下public string[] Split(params char[] separator)
不多說,圖片簡單又明瞭!
注意的是
separator 的每個項目各定義一個分隔字元。
就是一個字串陣列一個Empty, 那麼如果兩個分隔符號為相鄰
如下圖也就是兩個^就會多產生一個Empty
或是在此執行個體的開頭或結尾 找到一個分隔符號
則對應的陣列元素會包含 Empty。
因為每個項目前跟後各有一個分割字元
其餘多的將會被推入空陣列
請看下圖:因為兩個^造成兩個分割字元
一個是要給 "我是帥哥"的 於是 第二個空字串則推入陣列
要解決這問題也很簡單
給他一個foreach 跟一個if 判斷不等於""空字串時印出!
而這裡還搭配一個Trim()方法用於清除空白字串
看下圖
我們也可以使用String.Split 方法 (Char[], StringSplitOptions)
來達到不回傳空字串的目的
語法如下
[ComVisibleAttribute(false)]
public string[] Split(char[] separator,StringSplitOptions options)
來看程式碼如下
啊在假如 今天判斷式改成string
可以用這個語法 如下
String.Split 方法 (String[], StringSplitOptions)
來看圖片吧!
不一樣的是 Scut 是一個字串唷!!
再來看最後一個例子
語法如下
String.Split 方法 (Char[], Int32)
或者
String.Split 方法 (String[], Int32, StringSplitOptions)
可以看到 第二個參數是一個 Int32 整數型態
用來限制回傳字串陣列的最大數目
如果是2 代表只有兩個陣列 0跟1
如果是3 代表只有三個陣列0,1,2
來看下圖 就能明白!!
看紅色箭頭!! 可以注意的是2
分別得到兩個陣列
再來看下圖 將參數改成3 出現三個陣列
因此可以清楚明白他的規則
沒有留言:
張貼留言