有一个字符串
a=“您的序列号是 123456 您的名字是 阿瑟大”这个“123456”和“阿瑟大”是从数据库读取的动态生成的,“您的序列号”和“您的名字”这两个是静态的
请问,我想从这个动态产生的字符串a中把“12345”提出来赋给别的变量,可行马?----
这样作,是因为我要在程序产生的日志中,把数据提取出来

解决方案 »

  1.   

    中间的字符串用Copy取得,后面的用RightStr函数取得,当然你先要获得SubString的开始序号,自己写吧!
      

  2.   

    procedure TForm1.Button1Click(Sender: TObject);
    var
      a :string;
      i,j :integer;
      s :string;
    begin
     a:='您的序列号是 123456您的名字是 阿瑟大';
     i :=pos('您的名字',a);
     j :=pos(' ',a);
     s :=copy(a,j,i-j);
     showmessage(s);
    end;
      

  3.   

    这样也行:
    procedure TForm1.Button1Click(Sender: TObject);
    var str: string;
        i: Integer;
    begin
      str := '您的序列号是 123456 您的名字是 阿瑟大';
      Delete(str, 1, 13);
      i := Pos(' ', str);
      Delete(Str, i, 18);
      Edit1.Text := str;
    end;