基本介紹
返回一個下標從零開始的一維數組,它包含
傳回數組= Split(原始字串, 要找的字串, 拆成幾個數組)
默認返回一維數組,以指定字元分割,T=split("F:\a\a.txt","\")
則:T(0)="F:";T(1)="a";T(2)="a.txt" ;T(UBound(T))=a.txt
語法
Split(expression[, delimiter[, count[, compare]]])
部分 | 描述 |
expression | 必需的。包含子字元串和分隔設定的字元串表達式 。如果expression是一個長度為零的字元串(""),Split則返回一個空數組,即沒有元素和數據的數組。 |
delimiter | 可選的。用於標識子字元串邊界的字元串字元。如果忽略,則使用空格字元(" ")作為分隔設定。如果delimiter是一個長度為零的字元串,則返回的數組僅包含一個元素,即完整的 expression字元串。 |
count | 可選的。要返回的子字元串數,-1表示返回所有的子字元串。 |
compare | 可選的。數字值,表示判別子字元串時使用的比較方式。關於其值,請參閱“設定值”部分。 |
語言用法
Visual Basic:
聲明:
Public Function Split ( _ ParamArray separator As Char() _) As String()
用法:
Dim instance As StringDim separator As Char()Dim returnValue As String()returnValue = instance.Split(separator)
ASP:
語法
返回值數組 = Split("字元串","分割符")
示例:
Ctext=Split("你好|早上好|中午好","|")
php
split -- 用正則表達式將字元串分割到數組中
說明
array split ( string pattern, string string [, int limit] )
本函式返回一個字元串數組,每個單元為 string 經區分大小寫的正則表達式 pattern 作為邊界分割出的子串。如果設定了 limit,則返回的數組最多包含 limit 個單元,而其中最後一個單元包含了 string 中剩餘的所有部分。如果出錯,則 split() 返回 FALSE。
C#
public string[] Split( params char[] separator)
Visual C++
public:array^ Split( ... array^ separator)
J#
public String[] Split( char[] separator)
JScript
public function Split( ... separator : char[]) : String[]
JavaScript中String對象的split方法可以用來拆分字元串,它接受一個字元串或正則表達式參數作為分隔設定,返回被這個分隔設定分割之後的字元串數組,split的第二個參數指定了被分割後字元串數組的最大長度,大於這個長度的子串將被捨棄,如果默認這個參數,則不捨棄任何子串。
Linux命令
語法
要將一個檔案分割成包含指定行數的多個檔案
split [ -l LineCount ] [ -a SuffixLength ] [ File [ Prefix ] ]
要將一個檔案分割成包含指定位元組數的多個檔案
split -b Number [ k | m ] [ -a SuffixLength ] [ File [ Prefix ] ]
描述
split 命令讀取指定檔案,以 1000 行大小寫在一組輸出檔案上。第一個輸出檔案名稱由指定前綴(預設值 x)和 aa 後綴組合構成,第二個檔案名稱由前綴和 ab 後綴組合構成,如此按字典順序一直到 zz(最多 676 個檔案)。後綴的字母數及因此的輸出名稱檔案數可用 -a 標誌增加。
您指定的 Prefix 不能長於 PATH_MAX - 2 個位元組(如果指定了 -a 標誌,則不能長於 PATH_MAX - SuffixLength 個位元組)。PATH_MAX 變數指定系統的最大路徑名的長度( 在 /usr/include/sys/limits.h檔案中定義)。
如果您不指定輸入檔案或如果您指定 -(減號)檔案名稱,那么 split 命令從標準輸入讀取檔案。
標誌
註:-b 和 -l 標誌是互斥的。
-a SuffixLength 指定用於形成輸出名稱檔案後綴部分的字母數。字母數確定可能的輸出檔案名稱組合數。預設是兩個字母。
-b Number 將檔案分割成 Number 變數指定的位元組數。將 k(千位元組)或 m(兆位元組)乘數加到 Number 值的末尾使檔案分別分割成 Number*1024 位元組或 Number*1,048,576 位元組的幾個段。
-l LineCount 指定每個輸出檔案的行數。預設值是 1000 行。
退出狀態
該命令返回以下退出值:
0 命令成功運行。
>0 發生錯誤。
示例
1. 要將檔案分割成 1000 行的段,請輸入:
split book
此示例將 book 分割成 1000 行的段,命名為 xaa、 xab、 xac 等等。
2. 要將檔案分割成 50 行的段並指定檔案名稱前綴,請輸入:
split -l 50 book sect
此示例將 book 分割成 50 行的段,命名為 sectaa、sectab、sectac 等等。
3. 要將檔案分割成 2KB 的段,請輸入:
split -b 2k book
此示例將 book 分割成 2*1024 位元組的段,命名為 xaa、xab、xac 等等。
4. 要將檔案分割成 676 個以上的段,請輸入:
split -l 5 -a 3 book sect
此例將 book 分割成 5 行的段,命名為 sectaaa、sectaab、 sectaac 等等,直到 sectzzz(最多 17,576 個檔案)。
該命令包含在/usr/bin/split 。
函式
public String[]split(String regex, int limit)
描述
根據匹配給定的正則表達式來拆分此字元串。 此方法返回的數組包含此字元串的每個子字元串,這些子字元串由另一個匹配給定的表達式的子字元串終止或由字元串結束來終止。數組中的子字元串按它們在此字元串中的順序排列。如果表達式不匹配輸入的任何部分,則結果數組只具有一個元素,即此字元串。 limit 參數控制模式套用的次數,因此影響結果數組的長度。如果該限制n大於 0,則模式將被最多套用n- 1 次,數組的長度將不會大於n,而且數組的最後項將包含超出最後匹配的定界符的所有輸入。如果n為非正,則模式將被套用儘可能多的次數,而且數組可以是任意長度。如果n為零,則模式將被套用儘可能多的次數,數組可有任何長度,並且結尾空字元串將被丟棄。 例如,字元串 "boo:and:foo" 使用這些參數可生成下列結果:
Regex | Limit | 結果 | : | 2 | { "boo", "and:foo" } |
: | 5 | { "boo", "and", "foo" } | | | |
: | -2 | { "boo", "and", "foo" } | | | |
o | 5 | { "b", "", ":and:f", "", "" } | | | |
o | -2 | { "b", "", ":and:f", "", "" } | | | |
o | 0 | { "b", "", ":and:f" } | | | |
這種形式的方法調用str.split(regex,n) 產生與以下表達式完全相同的結果: Pattern.compile(regex).split(str,n)
參數返回值與異常
regex - 定界正則表達式
limit - 結果閾值,如上所述
返回值
字元串數組,根據給定正則表達式的匹配來拆分此字元串,從而生成此數組
異常
PatternSyntaxException - 如果正則表達式的語法無效(JavaAPI)