delphi 泛型数组 StrSplit 字符串分割


本文整理自网络,侵删。

 
unit Unit1;

interface

uses
  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
  Vcl.Controls, Vcl.Forms, Vcl.Dialogs;

type
  TForm1 = class(TForm)
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

function StrSplit(SourStr: string; Delimiter: string): TArray<string>;
var
  i, len, count, count2: integer;
  sPart: string;
  sArr: TArray<string>;
begin

  len := Length(SourStr);
  sPart := '';
  count := 0;
  for i := 1 to len do
  begin
    if (SourStr[i] = Delimiter) or ((i = len) and (SourStr[i] <> Delimiter))
    then
    begin
      count := count + 1;
      SetLength(sArr, count);
      if (i = len) and (SourStr[i] <> Delimiter) then
        sPart := sPart + SourStr[i];
      sArr[count - 1] := sPart;
      sPart := '';
    end
    else
    begin
      sPart := sPart + SourStr[i];
    end;
  end;
  Result := sArr;
end;

procedure TForm1.FormCreate(Sender: TObject);
var
A:TArray<string>;
begin
A:=StrSplit('123-12345-6789','-');

Caption:=A[0]+'='+A[1]+'='+A[2];

end;

end.

相关阅读 >>

Delphi android调用授权管理打开通知监听服务

Delphi xe7 取得进程占用内存的两个函数

Delphi 详解variant 的相关函数

Delphi 拷贝文件夹内所有内容

Delphi wm_copydata的应用

Delphi 从indy9升级到indy10时idtcpserver的变化

Delphi 截取被遮挡的window画面

Delphi.about.com一个钩子的实现代码

tidhttpresponseinfo 中文乱码问题解决

Delphi messagebox 和 messagedlg用法

更多相关阅读请进入《Delphi》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...