zoukankan      html  css  js  c++  java
  • 按自定义长度截取字符串

    按自定义长度截取字符串,运行结果如下:

     

    代码如下:

    unit Unit1;
    
    interface
    
    uses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs, StdCtrls,Math;
    
    type
      TForm1 = class(TForm)
        Button1: TButton;
        Button2: TButton;
        procedure Button1Click(Sender: TObject);
        procedure Button2Click(Sender: TObject);
      private
        { Private declarations }
      public
        { Public declarations }
      end;
    
    var
      Form1: TForm1;
    
    implementation
    
    {$R *.dfm}
    
    procedure TForm1.Button1Click(Sender: TObject);
    var
      S,SS01,SS02,SS03,SS04:string;
      I:Integer;
      function STR (SS:string;I:Integer):string;
      var
        J,K,h:Integer;
        MYARRAY:array of string;
      begin
        K:=Ceil(Length(SS)/I);
        for h:=1 to k do
        begin
          begin
            SS02:=Copy(SS,I+1,Length(SS));
            SS01:=StringReplace(SS,SS02,'',[rfReplaceAll, rfIgnoreCase]);
            SS:=SS02;
            SS04:=SS01;
            J:=Length(SS02);
            {
            IF Length(SS02)>I then
            begin
              //SS03:=STR(SS02,I);
              //SS:=SS02;
              //SS02:=Copy(SS,I+1,Length(ss));//lenth函數費時,速度慢,長度多了4byte。
              SS02:=Copy(SS,I+1,1000000);//這樣會快很多
              //SS01:=StringReplace(SS,SS02,' ',[rfReplaceAll, rfIgnoreCase]);
            end;
            }
          end;
          //SS03:=SS03+#13#10+SS04;//回車鍵加在前面
          SS03:=SS03+SS04+#13#10;//回車鍵加在後面
        end;
        Result:=SS03;
      end;
    begin
      //SS:=StringReplace('123456',#13,'',[rfReplaceAll, rfIgnoreCase]);//#13是SqlServer的換行方式
     { SS:='ABCDEFGHIJK';
      I:=Length(SS)div 4;
      if I>1 then
      begin
        SS02:=Copy(SS,5,Length(SS));
        SS01:=StringReplace(SS,SS02,' ',[rfReplaceAll, rfIgnoreCase]);
        S:=SS01+#13+SS02;
      end; }
      S:= STR('ABCDEFGHIJKLMN',4);
      ShowMessage(S);
    end;
    
    procedure TForm1.Button2Click(Sender: TObject);
    var
      ss:string;
    begin
      ss:='i am chinese!';//13個字符,包括空格。
      ShowMessageFmt('%d',[SizeOf(ss)]);//4,此處為4字節,說明delphi中的string是一個指針!
      ShowMessageFmt('%d',[Length(ss)]);//13,取到ss里保存的字符个数
    end;
    
    end.
  • 相关阅读:
    20145334赵文豪 《信息安全系统设计基础》第2周学习总结
    20145334赵文豪《信息安全系统设计基础》第1周学习总结
    关于第五周大家学习问题的总结
    20145334 第五次 java 实验报告
    20145334 《Java程序设计》第10周学习总结
    实验四 Android开发基础
    # 20145334 《Java程序设计》第9周学习总结
    20145334实验三《敏捷开发与XP实践》
    实验二:面向对象设计
    程序的机器级表示内容补充及扩展
  • 原文地址:https://www.cnblogs.com/168-h/p/15217208.html
Copyright © 2011-2022 走看看