分隔字符串,以最后一个斜杠 / 作为标记进行截取,取右边的字符就是 1.exe
var
 str:string;
begin
 str:='www.baidu.com/text/down/1.exe';
 str:=StringReplace(StrRScan(PChar(str),'/'), '/', '',[rfReplaceAll]);
 ShowMessage(str);

解决方案 »

  1.   


    那如果是这种怎么办 kuplay.exe?_upd=palazu_32_26453.exe
      

  2.   


    var
     str:string;
    begin
     str:='www.baidu.com/text/down/_upd=palazu_32_26453.exe';
     str:=StringReplace(StrRScan(PChar(str),'/'), '/', '',[rfReplaceAll]);
     if Pos('=',str) > 0 then
        str:=StringReplace(StrRScan(PChar(str),'='), '=', '',[rfReplaceAll]);
     ShowMessage(str);
      

  3.   


    var
     str:string;
    begin
     str:='www.baidu.com/text/down/kuplay.exe?_upd=palazu_32_26453.exe';
     str:=StringReplace(StrRScan(PChar(str),'/'), '/', '',[rfReplaceAll]);
     // 此时 str = 'kuplay.exe?_upd=palazu_32_26453.exe'
     if Pos('=',str) > 0 then 
        // 如果 str 包含 '=' 就再次用 '=' 分隔一次
        str:=StringReplace(StrRScan(PChar(str),'='), '=', '',[rfReplaceAll]);
     ShowMessage(str); //_upd=palazu_32_26453.exe