📄 jbstr.pas
字号:
{$D-,L-}
Unit jbStr;
Interface
{
Zakladni operace pro manipulaci s retezci
(c) 1991-99 J.BENES, All right reserved
}
Type CharSet = Set Of Char;
Function Version:Word;{$IfDef DllExpI}Export;{$EndIf}
Function UpCase(CH:Char):Char;{$IfDef DllExpI}Export;{$EndIf}
Function LoCase(CH:Char):Char;{$IfDef DllExpI}Export;{$EndIf}
Function StrLoCase(S:String):String;{$IfDef DllExpI}Export;{$EndIf}
Function StrUpCase(S:String):String;{$IfDef DllExpI}Export;{$EndIf}
Function StrUpCaseNoCs(S:String):String;{$IfDef DllExpI}Export;{$EndIf}
Function CharStr(CH:Char;Len:Byte):String;{$IfDef DllExpI}Export;{$EndIf}
Function StrStr(Const S:String;krat:Byte):String;{$IfDef DllExpI}Export;{$EndIf}
Function PadCh(S:String;CH:Char;Len:Byte):String;{$IfDef DllExpI}Export;{$EndIf}
Function Pad(Const S:String;Len:Byte):String;{$IfDef DllExpI}Export;{$EndIf}
Function LeftPadCh(S:String;CH:Char;Len:Byte):String;{$IfDef DllExpI}Export;{$EndIf}
Function LeftPad(Const S:String;Len:Byte):String;{$IfDef DllExpI}Export;{$EndIf}
Procedure Null(Var S:String);{$IfDef DllExpI}Export;{$EndIf}
Function Hash(Const S:String):LongInt;{$IfDef DllExpI}Export;{$EndIf}
Function Space(B:Byte):String;{$IfDef DllExpI}Export;{$EndIf}
Function MakeStr(Const S:String;B:Byte):String;{alias charstr}{$IfDef DllExpI}Export;{$EndIf}
Function TrimLead(Const S:String):String;{$IfDef DllExpI}Export;{$EndIf}
Function TrimTrail(Const S:String):String;{$IfDef DllExpI}Export;{$EndIf}
Function Trim(Const S:String):String;{$IfDef DllExpI}Export;{$EndIf}
Function ZeroClip(Const S:String):String;{$IfDef DllExpI}Export;{$EndIf}
Function CapitalizeWord(Const S:String):String;{$IfDef DllExpI}Export;{$EndIf}
Function CenterCh(Const S:String;CH:Char;Width:Byte):String;{$IfDef DllExpI}Export;{$EndIf}
Function Center(Const S:String;Width:Byte):String;{$IfDef DllExpI}Export;{$EndIf}
Function WordCount(S:String;WordDelims:CharSet):Byte;{$IfDef DllExpI}Export;{$EndIf}
Function ExtractWord(N:Byte;S:String;WordDelims:CharSet):String;{$IfDef DllExpI}Export;{$EndIf}
Function GetFirstWord(Const S:String;WordDelims:CharSet):String;{$IfDef DllExpI}Export;{$EndIf}
Function GetLastWord(Const S:String;WordDelims:CharSet):String;{$IfDef DllExpI}Export;{$EndIf}
Function ChangeWord(N:Byte;Const Wrd,S:String;WordDelims:CharSet):String;{$IfDef DllExpI}Export;{$EndIf}
Procedure WordWrap(InSt:String;Var OutSt,Overlap:String;
Margin:Byte;PadToMargin:Boolean);{$IfDef DllExpI}Export;{$EndIf}
Function PopWord(B:Byte;Var S:String;WordDelims:CharSet):String;{$IfDef DllExpI}Export;{$EndIf}
Function GetPos(B:Byte;S:String;WordDelims:CharSet):Byte;{$IfDef DllExpI}Export;{$EndIf}
Function GetEnd(B:Byte;S:String;WordDelims:CharSet):Byte;{$IfDef DllExpI}Export;{$EndIf}
Function InsWord(iWord,cWord,cString:String):String;{$IfDef DllExpI}Export;{$EndIf}
Function Smash(C:Char;Const S:String):String;{$IfDef DllExpI}Export;{$EndIf}
Function Mask(CharOfMask:Char;Const StrMask,Matrice:String;
Var NextPosic:Byte):String;{$IfDef DllExpI}Export;{$EndIf}
Function Count(CH:Char;Const Dest:String;Var Posic,Len:Byte):Boolean;{$IfDef DllExpI}Export;{$EndIf}
Function Push(Posic:Byte;Const Source,Dest:String):String;{$IfDef DllExpI}Export;{$EndIf}
Procedure Flop(Var S1,S2:String);{$IfDef DllExpI}Export;{$EndIf}
Function Strip(Const Mask,Source:String):String;{$IfDef DllExpI}Export;{$EndIf}
Function Change(S:String;Source,Dest:Char):String;{$IfDef DllExpI}Export;{$EndIf}
Function Zip(Const Mask,Source:String):String;{$IfDef DllExpI}Export;{$EndIf}
Function Turn(Const S:String):String;{$IfDef DllExpI}Export;{$EndIf}
Function Entab(Const Sx:String;TabSize:Byte):String;{$IfDef DllExpI}Export;{$EndIf}
Function Detab(Const Sx:String;TabSize:Byte):String;{$IfDef DllExpI}Export;{$EndIf}
Function HasExtension(Const Name:String; Var DotPos:Word):Boolean;{$IfDef DllExpI}Export;{$EndIf}
Function DefaultExtension(Const Name, Ext:String):String;{$IfDef DllExpI}Export;{$EndIf}
Function ForceExtension(Const Name, Ext:String):String;{$IfDef DllExpI}Export;{$EndIf}
Function JustExtension(Const PathName:String):String;{$IfDef DllExpI}Export;{$EndIf}
Function JustFilename(Const PathName:String):String;{$IfDef DllExpI}Export;{$EndIf}
Function JustPathname(Const PathName:String):String;{$IfDef DllExpI}Export;{$EndIf}
Function AddLastChar(C:Char;Const DirName:String):String;{$IfDef DllExpI}Export;{$EndIf}
Function RemLastChar(Const DirName:String):String;{$IfDef DllExpI}Export;{$EndIf}
Function CleanFileName(FileName:String):String;{$IfDef DllExpI}Export;{$EndIf}
Function TestDosName(FName:String):Boolean;{$IfDef DllExpI}Export;{$EndIf}
Function ShortDirName (Len:Byte; Const PName:String):String;{$IfDef DllExpI}Export;{$EndIf}
Function ShortFileName(Len:Byte;Const FName:String):String;{$IfDef DllExpI}Export;{$EndIf}
Function JustName(Const PathName:String):String;{$IfDef DllExpI}Export;{$EndIf}
Function Mult(Const S:String):Byte;{$IfDef DllExpI}Export;{$EndIf}
Function Num(Const S:String;Soustava:Byte):LongInt;{$IfDef DllExpI}Export;{$EndIf}
Function Doc(L:LongInt;Const Soustava:Byte):String;{$IfDef DllExpI}Export;{$EndIf}
Function PackNum(Const S:String):String;{$IfDef DllExpI}Export;{$EndIf}
Function UnpackNum(Const S:String):String;{$IfDef DllExpI}Export;{$EndIf}
Function Str3Long(Const S:String):LongInt;{$IfDef DllExpI}Export;{$EndIf}
Function Str2Long(Const S:String; Var I:LongInt):Boolean;{$IfDef DllExpI}Export;{$EndIf}
Function Str2Word(Const S:String; Var I:Word):Boolean;{$IfDef DllExpI}Export;{$EndIf}
Function Str2Int(Const S:String; Var I:Integer):Boolean;{$IfDef DllExpI}Export;{$EndIf}
Function Str2Real(Const S:String; Var R:Real):Boolean;{$IfDef DllExpI}Export;{$EndIf}
Function Long2Str(L:LongInt):String;{$IfDef DllExpI}Export;{$EndIf}
Function Real2Str(R:Real; Width, Places:Byte):String;{$IfDef DllExpI}Export;{$EndIf}
Function Form(Const Mask:String; R:Real):String;{$IfDef DllExpI}Export;{$EndIf}
Const
swKamenic = 0; {cestina Kamenickych}
swWin31CE = 1; {cestina Windows 3.1 CE}
swWin1250 = 2; {cestina Windows page 1250}
swECMA = 3; {kodovani ECMA ansi}
swLatin2 = 4; {kodovani Latin 2}
swUsaAnsi = 5; {cesky jen dle generatoru}
swIbm = 6; {bez vsech hacku a carek}
swSemigraph = 7; {jako ibm ale bez jakekoliv grafiky}
swMacIntosh = 8; {kodovani pro mac}
Function Trans(St:String;odkud,kampak:Byte):String;{$IfDef DllExpI}Export;{$EndIf}
Function Roman2Int(Const S: String): LongInt;{$IfDef DllExpI}Export;{$EndIf}
Function Int2Roman(Value: Longint): String;{$IfDef DllExpI}Export;{$EndIf}
Function htmlSrcEmail(Const S:String):String;{$IfDef DllExpI}Export;{$EndIf}
Const
MaskZipChar:Char = 'X';
Implementation
{cislo verse unity lo = verze; hi = subverze}
Function Version;
Begin Version := 1 + 256 * 25; {tj. verze 1.25 Delphi} End;
Const
MaxCnt = 22; {kod Windows}
LoCharCS: String [MaxCnt] = '
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -