把1111-2222-3333-6666  可以有无限的得到1111222233336666另一个是把1111222233336666转换成1111-2222-3333-6666

解决方案 »

  1.   

    第一个:
    uses StrUtils;
    ...
    ..
    ShowMessage(AnsiReplaceStr(1111-2222-3333-6666,'-',''));第二个:字符串是用什么方式来分隔啊?固定长度吗?
      

  2.   

    ShowMessage(AnsiReplaceStr('1111-2222-3333-6666','-',''));
    刚才把原字符串漏打了引号...
      

  3.   

    //参考如下代码
    uses MaskUtils;procedure TForm1.Button1Click(Sender: TObject);
    var
      S: string;
    begin
      S := '1111222233336666';
      ShowMessage(FormatMaskText('0000-0000-0000-0000;0', S));
      S := '1111-2222-3333-6666';
      ShowMessage(StringReplace(S, '-', '', [rfReplaceAll]));
    end;
      

  4.   

    smiler007(笑一笑)不是固定长度
      

  5.   

    有没有一个这样的函数可以把 a:=‘1你好吗1dfg11-234522-333aa3-aa6666’以'-'为标记打散成四个字符串,a是不规则的
      

  6.   

    repeat
         remainstring:=a;
         result:=leftstr(remainstring,pos('-',remainstring)-1);
         a:=rightstr(a,length(a)-pos('-',a));
    until pos('-',a) = 0;
    -----------------------------------
    如果你确定是要打成四个字符串,那么就把repeat  unitil换成for循环
    result换成一个数组就可以了...