home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Chip 2002 November
/
Chip_2002-11_cd1.bin
/
zkuste
/
delphi
/
unity
/
d3456
/
JBSTR.ZIP
/
TESTSTR1.PAS
< prev
Wrap
Pascal/Delphi Source File
|
2000-07-09
|
14KB
|
468 lines
unit TestStr1;
{
(c) 1998-99 Jaro Benes, All Right Reserved
Test program for specific routines from jbStr.Pas module
}
interface
uses
SysUtils, WinTypes, WinProcs, Messages, Classes, Graphics, Controls,
Forms, Dialogs, StdCtrls, ExtCtrls;
type
TForm1 = class(TForm)
Panel1: TPanel;
_ShortPath: TButton;
_ShortFileName: TButton;
_FileNameOnly: TButton;
_TrimRight: TButton;
_TrimBoth: TButton;
_TrimLeft: TButton;
_PadRight: TButton;
_Center: TButton;
_PadLeft: TButton;
_ExtensionOnly: TButton;
_NameOnly: TButton;
_PathOnly: TButton;
_Capitalize: TButton;
_StrLoCase: TButton;
_StrUpCase: TButton;
Label2: TLabel;
Label1: TLabel;
Label3: TLabel;
Button3: TButton;
Bevel1: TBevel;
Bevel2: TBevel;
Label4: TLabel;
_Zip: TButton;
_Smash: TButton;
_Change: TButton;
_Form: TButton;
_Strip: TButton;
_InsertWord: TButton;
_Push: TButton;
_Hash: TButton;
_MaskAndZeroClip: TButton;
_Count: TButton;
_PopWord: TButton;
_ExtractWord: TButton;
_GetPosition: TButton;
_GetEnd: TButton;
_WordCount: TButton;
_ChangeWord: TButton;
_GetLastWord: TButton;
_GetFirstWord: TButton;
_Romanum: TButton;
_ExtractEmail: TButton;
Label5: TLabel;
_Alter: TButton;
_Reduce: TButton;
_ExtractNumber: TButton;
_FindWord: TButton;
_JoinTo: TButton;
Panel2: TPanel;
procedure _StrUpCaseClick(Sender: TObject);
procedure _StrLoCaseClick(Sender: TObject);
procedure _CapitalizeClick(Sender: TObject);
procedure _PathOnlyClick(Sender: TObject);
procedure _NameOnlyClick(Sender: TObject);
procedure _ExtensionOnlyClick(Sender: TObject);
procedure _FileNameOnlyClick(Sender: TObject);
procedure _ShortPathClick(Sender: TObject);
procedure _ShortFileNameClick(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure _TrimLeftClick(Sender: TObject);
procedure _TrimBothClick(Sender: TObject);
procedure _TrimRightClick(Sender: TObject);
procedure _PadLeftClick(Sender: TObject);
procedure _CenterClick(Sender: TObject);
procedure _PadRightClick(Sender: TObject);
procedure _ZipClick(Sender: TObject);
procedure _ChangeClick(Sender: TObject);
procedure _SmashClick(Sender: TObject);
procedure _StripClick(Sender: TObject);
procedure _FormClick(Sender: TObject);
procedure _InsertWordClick(Sender: TObject);
procedure _PushClick(Sender: TObject);
procedure _HashClick(Sender: TObject);
procedure _MaskAndZeroClipClick(Sender: TObject);
procedure _CountClick(Sender: TObject);
procedure _ExtractWordClick(Sender: TObject);
procedure _PopWordClick(Sender: TObject);
procedure _GetPositionClick(Sender: TObject);
procedure _GetEndClick(Sender: TObject);
procedure _WordCountClick(Sender: TObject);
procedure _ChangeWordClick(Sender: TObject);
procedure _GetLastWordClick(Sender: TObject);
procedure _GetFirstWordClick(Sender: TObject);
procedure _RomanumClick(Sender: TObject);
procedure _ExtractEmailClick(Sender: TObject);
procedure _AlterClick(Sender: TObject);
procedure _ReduceClick(Sender: TObject);
procedure _ExtractNumberClick(Sender: TObject);
procedure _FindWordClick(Sender: TObject);
procedure _JoinToClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
Uses JbStr;
procedure TForm1.Button3Click(Sender: TObject);
begin
Close
end;
{using constant for test pass}
{Czech code is possible change, table definition is included in pascal text
and size is 8*128 byte on data}
Const
cname='Joachim Abraham èikula °eΦen² èamÜuliΦφ°φnek';
sname=#1#1#1#1#1#1#1#1#1#1'Joachim èikula'+#1#1#1#1#1#1#1#1#1#1;
fname='c:\upro\libr\great\test\m1y\set\as\test\my.doc';
procedure TForm1._StrUpCaseClick(Sender: TObject);
begin
Label4.Caption:=cname;
Label3.Caption:='"'+Label4.Caption+'"';
Label4.Caption:='"'+StrUpCase(Label4.Caption)+'"';
Label5.Caption:='Mask ()';
end;
procedure TForm1._StrLoCaseClick(Sender: TObject);
begin
Label4.Caption:=cname;
Label3.Caption:='"'+Label4.Caption+'"';
Label4.Caption:='"'+StrLoCase(Label4.Caption)+'"';
Label5.Caption:='Mask ('+''+')'
end;
procedure TForm1._CapitalizeClick(Sender: TObject);
begin
Label4.Caption:=StrLoCase(sname);
Label3.Caption:='"'+Trim(Label4.Caption)+'"';
Label4.Caption:='"'+CapitalizeWord(Trim(Label4.Caption))+'"';
Label5.Caption:='Mask ('+''+')';
end;
procedure TForm1._PathOnlyClick(Sender: TObject);
begin
Label4.Caption := fname;
Label3.Caption:='"'+Label4.Caption+'"';
Label4.Caption:='"'+JustPathName(Label4.Caption)+'"';
Label5.Caption:='Mask ('+''+')';
end;
procedure TForm1._NameOnlyClick(Sender: TObject);
begin
Label4.Caption := fname;
Label3.Caption:='"'+Label4.Caption+'"';
Label4.Caption:='"'+JustName(Label4.Caption)+'"';
Label5.Caption:='Mask ('+''+')';
end;
procedure TForm1._ExtensionOnlyClick(Sender: TObject);
begin
Label4.Caption := fname;
Label3.Caption:='"'+Label4.Caption+'"';
Label4.Caption:='"'+JustExtension(Label4.Caption)+'"';
Label5.Caption:='Mask ('+''+')';
end;
procedure TForm1._FileNameOnlyClick(Sender: TObject);
begin
Label4.Caption := fname;
Label3.Caption:='"'+Label4.Caption+'"';
Label4.Caption:='"'+JustFileName(Label4.Caption)+'"';
Label5.Caption:='Mask ('+''+')';
end;
procedure TForm1._ShortPathClick(Sender: TObject);
begin
Label4.Caption := fname;
Label3.Caption:='"'+Label4.Caption+'"';
Label4.Caption:='"'+ShortDirName(25,Label4.Caption)+'"';
Label5.Caption:='Mask ('+''+')';
end;
procedure TForm1._ShortFileNameClick(Sender: TObject);
begin
Label4.CAPTION := fname;
Label3.Caption:='"'+Label4.Caption+'"';
Label4.Caption:='"'+ShortFileName(25,Label4.Caption)+'"';
Label5.Caption:='Mask ('+''+')';
end;
procedure TForm1._TrimLeftClick(Sender: TObject);
begin
Label4.Caption:=sname;
Label3.Caption:='"'+Label4.Caption+'"';
Label4.Caption:='"'+TrimLead(Label4.Caption)+'"';
Label5.Caption:='Mask ('+''+')';
end;
procedure TForm1._TrimBothClick(Sender: TObject);
begin
Label4.Caption:=sname;
Label3.Caption:='"'+Label4.Caption+'"';
Label4.Caption:='"'+Trim(Label4.Caption)+'"';
Label5.Caption:='Mask ('+''+')';
end;
procedure TForm1._TrimRightClick(Sender: TObject);
begin
Label4.Caption:=sname;
Label3.Caption:='"'+Label4.Caption+'"';
Label4.Caption:='"'+TrimTrail(Label4.Caption)+'"';
Label5.Caption:='Mask ('+''+')';
end;
procedure TForm1._PadLeftClick(Sender: TObject);
begin
Label4.Caption:=Trim(sname);
Label3.Caption:='"'+Label4.Caption+'"';
Label4.Caption:='"'+LeftPadCh(Label4.Caption,'_',24)+'"';
Label5.Caption:='Mask ('+''+')';
end;
procedure TForm1._CenterClick(Sender: TObject);
begin
Label4.Caption:=Trim(sname);
Label3.Caption:='"'+Label4.Caption+'"';
Label4.Caption:=CenterCh(Label4.Caption,'_',34);
Label5.Caption:='Mask ('+''+')';
end;
procedure TForm1._PadRightClick(Sender: TObject);
begin
Label4.Caption:=Trim(sname);
Label3.Caption:='"'+Label4.Caption+'"';
Label4.Caption:=PadCh(Label4.Caption,'_',24);
Label5.Caption:='Mask ('+''+')';
end;
procedure TForm1._ZipClick(Sender: TObject);
begin
Label4.Caption:='1234567899955881236AH33';
Label3.Caption:='"'+Label4.Caption+'"';
Label4.Caption:='"'+Zip('XXX,XXX,XXX $ XX.XX.XX/XX XX - XX-XX',Label4.Caption)+'"';
Label5.Caption:='Mask ('+'"XXX,XXX,XXX $ XX.XX.XX/XX XX - XX-XX"'+')';
end;
procedure TForm1._ChangeClick(Sender: TObject);
begin
Label4.Caption:='Kokorokokoo';
Label3.Caption:='"'+Label4.Caption+'"';
Label4.Caption:='"'+Change(Label4.Caption,'o','u')+'"';
Label5.Caption:='Mask ('+'"o"-->"u"'+')';
end;
procedure TForm1._SmashClick(Sender: TObject);
begin
Label4.Caption:=' CU 11 A. 123456 , 11';
Label3.Caption:='"'+Label4.Caption+'"';
Label4.Caption:='"'+Smash(' ',Label4.Caption)+'"';
Label5.Caption:='Mask ('+'" "'+')';
end;
procedure TForm1._StripClick(Sender: TObject);
begin
Label4.Caption:='sedesCU.....11.aA.--123456 as,L11';
Label3.Caption:='"'+Label4.Caption+'"';
Label4.Caption:='"'+Strip(' XX XX XX XXXXXX X XX',Label4.Caption)+'"';
Label5.Caption:='Mask ('+'" XX XX XX XXXXXX X XX"'+')';
end;
procedure TForm1._FormClick(Sender: TObject);
begin
Label3.Caption:='"0.15639"';
Label4.Caption:='"'+Form('XX.XXXX',0.15639)+'"';
Label5.Caption:='Mask ('+'XX.XXXX'+')';
end;
procedure TForm1._InsertWordClick(Sender: TObject);
begin
Label3.Caption:='"Lidaeip"';
Label4.Caption:='"'+InsWord('aei','oo','Lidaeip')+'"';
Label5.Caption:='Mask ('+'"aei"-->"oo"'+')';
end;
procedure TForm1._PushClick(Sender: TObject);
begin
Label3.Caption:='"Lidoop"';
Label4.Caption:='"'+Push(12,'Paar','Lidoop')+'"';
Label5.Caption:='Mask ('+''+')';
end;
procedure TForm1._HashClick(Sender: TObject);
begin
Label3.Caption:='"Lidoop"';
Label4.Caption:='"'+Long2Str(Hash('Lidoop'))+'"';
Label5.Caption:='Mask ('+''+')';
end;
procedure TForm1._MaskAndZeroClipClick(Sender: TObject);
Var Next:Byte;
begin
Next:=1;
Label3.Caption:='"JEDN-0031-12345"';
Label4.Caption:='"'+
ZeroClip(Mask('y','uuuu-yyyy=iiiii','JEDN-0031-12345',Next))+'"';
Label5.Caption:='Mask ('+'uuuu-yyyy=iiiii'+')';
end;
procedure TForm1._CountClick(Sender: TObject);
Var S,S1,S2:String;
Posic,Len:Byte;
begin
S := 'This is string for "change" or "store".';
S1:='';S2:='';
Label3.Caption:='"'+S+'"';
Posic := 0;
{Note: this is use for special scanning for telecomunicacions servicies}
While Count('"',S,Posic,Len) Do Begin
If S1='' Then Begin
S1:=Copy(Copy(S,Posic+Len,255),1,Pos('"',Copy(S,Posic+Len,255))-1);
Inc(Posic,Length(S1)+1);
End
Else
If S2='' Then Begin
S2:=Copy(Copy(S,Posic+Len,255),1,Pos('"',Copy(S,Posic+Len,255))-1);
Break;
End;
Inc(Posic,Len) {for skip over "}
End;
{standard string manipulation}
Posic:=Pos(S1,S);
Len:=Pos(S2,S);
Delete(S,Len,Length(S2));
Insert(S1,S,Len);
Delete(S,Posic,Length(S1));
Insert(S2,S,Posic);
Label4.Caption:='"'+S+'"';
Label5.Caption:='Mask ('+''+')';
end;
procedure TForm1._ExtractWordClick(Sender: TObject);
begin
Label3.Caption:='"Honest Abe Lincoln"';
Label4.Caption:='"'+ExtractWord(2,'Honest Abe Lincoln',[' '])+'"';
Label5.Caption:='Mask ('+''+')';
end;
procedure TForm1._PopWordClick(Sender: TObject);
Var S:String;
begin
S:='"Honest Abe Lincoln"';
Label4.Caption:='"'+PopWord(2,S,[' '])+'"';
Label3.Caption:=S;
Label5.Caption:='Mask ('+'"Honest Abe Lincoln"'+')';
end;
procedure TForm1._GetPositionClick(Sender: TObject);
begin
Label3.Caption:='"Honest Abe Lincoln"';
Label4.Caption:='"'+Long2Str(GetPos(2,'Honest Abe Lincoln',[' ']))+'"';
Label5.Caption:='Mask ('+'of "Abe"'+')';
end;
procedure TForm1._GetEndClick(Sender: TObject);
begin
Label3.Caption:='"Honest Abe Lincoln"';
Label4.Caption:='"'+Long2Str(GetEnd(2,'Honest Abe Lincoln',[' ']))+'"';
Label5.Caption:='Mask ('+'of "Abe"'+')';
end;
procedure TForm1._WordCountClick(Sender: TObject);
begin
Label3.Caption:='"Honest Abe Lincoln"';
Label4.Caption:='"'+Long2Str(WordCount('Honest Abe Lincoln',[' ']))+'"';
Label5.Caption:='Mask ('+''+')';
end;
procedure TForm1._ChangeWordClick(Sender: TObject);
begin
Label3.Caption:='"Anna Hana Jana Dana Marcela Petra"';
Label4.Caption:=ChangeWord(3,'Kamila',Label3.Caption,[' ']);
Label5.Caption:='Mask ('+'"Jana"-->"Kamila"'+')';
end;
procedure TForm1._GetLastWordClick(Sender: TObject);
begin
Label3.Caption:='"Anna Hana Jana Dana Marcela Petra"';
Label4.Caption:='"'+GetLastWord(Label3.Caption,[' ']);
Label5.Caption:='Mask ('+''+')';
end;
procedure TForm1._GetFirstWordClick(Sender: TObject);
begin
Label3.Caption:='"Anna Hana Jana Dana Marcela Petra"';
Label4.Caption:=GetFirstWord(Label3.Caption,[' '])+'"';
Label5.Caption:='Mask ('+''+')';
end;
procedure TForm1._RomanumClick(Sender: TObject);
begin
Label3.Caption:='"4568" "MDCIX"';
Label4.Caption:='"'+Int2Roman(4568)+'" "'+IntToStr(Roman2Int('MDCIX'))+'"';
Label5.Caption:='Mask ('+''+')';
end;
procedure TForm1._ExtractEmailClick(Sender: TObject);
begin
Label3.Caption:=StrLoCase('<A HREF="mailto:micrel@micrel.cz"><IMG BORDER=0 SRC="email.gif"></A>');
Label4.Caption:=htmlSrcEmail(Label3.Caption);
Label5.Caption:='Mask ('+''+')';
end;
procedure TForm1._AlterClick(Sender: TObject);
begin
Label3.Caption:='Orig : '#1+' Alternative : Joachim';
Label4.Caption:=Alter(Trim(#1),'Joachim');
Label5.Caption:='';
end;
procedure TForm1._ReduceClick(Sender: TObject);
begin
Label3.Caption:='"Anna Hana Jana Dana Marcela Petra"';
Label4.Caption:='"'+Reduce('Anna Hana Jana Dana Marcela Petra',6)+'"';
Label5.Caption:='Reduce(S,6)';
end;
procedure TForm1._ExtractNumberClick(Sender: TObject);
begin
Label3.Caption:='"dgg4fdg7g4h7rt4h4rt7h4t"';
Label4.Caption:='"'+ExtractNumber('dgg4fdg7g4h7rt4h4rt7h4t')+'"';
Label5.Caption:='';
end;
procedure TForm1._FindWordClick(Sender: TObject);
begin
Label3.Caption:='"Anna Hana Jana Dana Marcela Petra"';
If FindWord ('Dana','Anna Hana Jana Dana Marcela Petra',[' ']) Then
Label4.Caption:='"Dana"';
Label5.Caption:='FindWord(''Dana'',S,['' ''])=True';
end;
procedure TForm1._JoinToClick(Sender: TObject);
begin
Label3.Caption:='First: "Anna" Second: "Hana"';
Label4.Caption:='"'+JoinTo('Anna',',','Hana')+'"';
Label5.Caption:='Delims = ['','']';
end;
end.