zoukankan      html  css  js  c++  java
  • bcb Split涵数

    // 拆分字符
    TStringList *Split(WideString Spliter, WideString String, int SplitNumber = 0)
    {
        int const MaxPos = 0x7fffffff, StartPos = 1;
        int FindPos, CharLen, Length, MySplitNumber=0;
        TStringList *Strs = new TStringList;
        BOOL LostTail;

        //if (SplitNumber == 0) LostTail = TRUE; 不严格,LostTail 在
        // SplitNumber != 0 时可能是任何值。故修改如下:
        LostTail = (SplitNumber == 0);
        //^^^^^^^^^^^^^^^^^^^^^^^^^^\\
        if (SplitNumber <= 0) SplitNumber = MaxPos;
            else MySplitNumber = SplitNumber;
        CharLen = Spliter.Length(); Length = String.Length();

        while(1)
        {
            FindPos = String.Pos(Spliter);
            if (CharLen <= 0){
                if (FindPos > Length) break;
                    else FindPos++;
            }
            if ((FindPos == 0) || (SplitNumber <= 1)){
                Strs->Add(String.SubString(StartPos,MaxPos));
                break;
            }
            --SplitNumber;
            Strs->Add(String.SubString(StartPos,FindPos - StartPos));
            String = String.SubString(FindPos+CharLen,MaxPos);
        }
        int i;
        for (i=Strs->Count; i<MySplitNumber; i++){
            Strs->Add("");
        }
        if (LostTail){
            for (i = Strs->Count - 1; i>=0; i--)
                if (Strs->Strings[i] == "") Strs->Delete(i);
                    else break;
        }

        return Strs;
    }

  • 相关阅读:
    RabbitMQ从入门到精通(一)
    MQ的架构作用
    Docker可视化管理工具
    Linux修改war包中文件
    Redis--各个数据类型最大存储量
    linux中直接修改jar包内配置文件
    脚本发布程序
    maven 安装到私服
    HTML基础 text-indent 把文字移出浏览器,隐藏起来
    HTML基础 td valign 设置文本靠上 居中 靠下
  • 原文地址:https://www.cnblogs.com/xsmhero/p/1557120.html
Copyright © 2011-2022 走看看