下面介紹Delphi自帶的字符串分割函數,根據你的需要來使用。
1、ExtractStrings
function ExtractStrings(Separators, WhiteSpace: TSysCharSet; Content: PChar; Strings: TStrings): Integer;
第一個參數是分隔符,可以是多個,例如 [';',',',':'] 可以按分號、逗號、分號來同時分割。
第二個參數是開頭被忽略的字符,例如['<','>',' '],被分割出的字符,如果開頭有大於號,小於號,或者分號,被分割出來后會被忽略。
第三個參數是被分割的字符串。
第四個參數返回分割出的字符串數量。
注:該函數只能按單個字符進行分割,不能按字符串進行分割。
2、SplitString
function SplitString(const S, Delimiters: string): TStringDynArray;
第一個參數是被分割的字符串。
第二個參數是分隔符,可以包含多個分隔符,例如';,:',可以按分號、逗號、分號來同時分割。
返回值是分割的結果。
注:這個函數在早期的Delphi中沒有,跟ExtractStrings的用法相近,參數更少,使用更方便一些,要引用這個單元System.StrUtils
3、使用正則式 TRegEx.Split
function TRegEx.Split(input, pattern : string): TArray<string>
第一個參數是被分割的字符串。
第二個參數是分隔符。
注:該函數可以完全替代上面兩個函數,正則式的功能很強大,上面兩個函數只能按某幾個字符進行分割,正則式則可以按字符串、或者匹配字符串進行分割,需要引用單元 RegularExpressions,在Delphi XE以及以后版本中包含正則式。
---------------------
作者:李正己
來源:CSDN
原文:https://blog.csdn.net/webouse/article/details/52774936
版權聲明:本文為博主原創文章,轉載請附上博文鏈接!
