function getsAB(s,s1,s2:string):string;
  var i1,i2,i3:Integer;
begin
    i1:=Pos(s1,s);
    i2:=Pos(s2,s);
    i3:=i2-i1;
    result:=Copy(s,i1+length(s1),i3-length(s1));
end;

解决方案 »

  1.   

    你把‘100元’这个字符串传到一个变量中,然后写个函数直接取数字
    以下也是在网上看见的某个高人写的函数:参考一下吧:
    function GetNumberFromStr(aStr: String): String;
    var
        i:   integer;
    begin
        Try
            Result:=   '';
            for i:=1 to Length(aStr)   do
            begin
                if (  Ord(aStr[i]) in [Ord('0')..ord('9')] )  then
                begin
                    Result:= Result+aStr[i];
                end;
            end;
        Except
        On E:Exception Do
            begin
                Result:='';
                exit;
            end;
        End;
    end;
      

  2.   

    下载这个东西:http://cc.embarcadero.com/Item/24258然后:uses uscan;var
      phonecode: double;  // 这个过程转换int64有问题,所以只好用double了
      amount: cardinal;
      confirm: string;  scan(这里写上读取的串, '用户%f交了%d元%s', [@phonecode, @amount, @confirm]);
      writeln(phonecode:11:0);  // 测试
      writeln(amount);  // 测试
      writeln(confirm); // 测试