Funktionen und Proceduren für Strings und Zahlen

Zur Vorstellung von Komponenten und Units für Lazarus
Antworten
pluto
Lazarusforum e. V.
Beiträge: 7178
Registriert: So 19. Nov 2006, 12:06
OS, Lazarus, FPC: Linux Mint 19.3
CPU-Target: AMD
Wohnort: Oldenburg(Oldenburg)

Funktionen und Proceduren für Strings und Zahlen

Beitrag von pluto »

Hallo,
wie angekündigt möchte ich jetzt mal meine Tools.pas veröffentlichen. Die ich in fast jeder meiner Projekte verwende.

im Anhang gibt es die Tools_neu.pas zum Downloaden.

hier eine Übersicht der Möglichkeiten:

Code: Alles auswählen

const
  Stop      = 0;
  Abbrechen = 1;
  Weiter    = 2;
 
type
  TStr = record
    vor, dahinter:String;
  end;
 
 
// -- String verarbeitung --
  // UnterstÃŒtzt solche strings( "Hallo du da" wie geht "608246 0")
  function GetTokenExt(str:String; septChar1,septChar2:Char; TokenNr:Integer):String;
  // SetToken
 
   // Ändert einen tocken in einem String und gibt dann den neuen string zurück
  function SetTokenExt(OldString, NewText:String; SeptChar,SeptChar2:Char; TokenNr:Integer):String;
 
  function GetBool(Str:String):Boolean;
  // Löscht den letzten eintrag vom verzeichnis
  function DelStr(s:String):String;
  // Teilt den String in zwei hälften und gibt die angebe hälfte zurück
  function SplitStr(str:String;ch:Char):string;
  // gibt die Richtungs tasten(Lings, Rechts, Oben, Unten) als namen zurück
  function GetKeyName(Key:Word):String;
 
  // Zählt die vorkommen von einem Bestimmten zeichen
  function NumToken(aString: String; SepChar: Char):Byte;
 
  // gibt einen vorkommen als string zurück
  function GetToken(aString: String; SepChar: Char; TokenNum: Byte):String;
 
  // Löscht einen tocken in einem String und gibt dann den neuen string zurück
  function DelToken(aString,delstr: String):String;
 
   // Ändert einen tocken in einem String und gibt dann den neuen string zurück
  function SetToken(OldString, NewText:String; SeptChar:Char; TokenNr:Integer):String;
 
 
  // Zählt ein bestimmtes zeichen in einem String
  function GetCharCount(C:PChar; str:String):Integer;
  // Gibt eine Zahle zwischen min und max zurück
  function RandomRange(min, max: integer): integer;
 
 
// -- Sonstige funktionen --
 
  // Löscht einen eintrag aus einerm array - Geht leider nicht -
  procedure DeleteArrayItem(Liste:array of Variant; index:Integer);
 
  // Schreibt in ein RichEdit in der angeben pos(Funktiniert auch bei memo: muss man nur anpassen)
  procedure str_into_RichEdit(Liste1215:TStringList;Insert_Text:string; line:integer; position:integer);
 
  // Zeigt eine Nachrichten box an(ShowMEssage)
  procedure ShowMessage1(Titel, Text:String);overload;
 
  // gib eine zufalls zahl zwischen den angeben wert und den angeben wert zu rück
  function Random2(von, bis:Integer):Integer; overload;
 
  // gibt eine zahl zwischen von und bis auser der in zu angeben zahl
  function Random2(von, bis, zu:Integer):Integer; overload;
 
  // sucht sich aus den angeben zahlen eine
  function RandomZahl(Zahlen:array of Integer ):Integer;
 
  // Sucht in einem interger Array einen wert und gibt True wenn er in gefunden hat zurück
  function GetArrayValue(z:array of Integer; wert:Integer):Boolean;
 
  // nimmer vor - die erste Zahl und nachdem - die zweite
  function Random2A(wert:String):Integer;
 
  // Gibt eine zufallige Zahl zurück aus der angeben
  function Random2B(Bis, Aus:Integer):Integer;
 
  // Sucht sich aus einer Booleannischen liste einen Index aus die True ist
  function Random2C(Liste:array of Boolean):Integer;
 
  // String verschlüsseln
  function myCoder(s: string; password: Integer; decode: Boolean):string;
 
  // Stream Funktionen
 
  // deKomprimiert einen Streeam der mit BZIP2 gepackt wurden ist
  procedure DecompressStream(Qulle,Ziel:TStream);
 
  // Komprimiert einen Stream mit BZIP2
  procedure CompressStream(Qulle, Ziel:TStream);
 
  // Kopiert einen Stream in den andren wobei man in abbrechen kann
  procedure CopyFrom(Qulle, Ziel:TStream; Size:Integer);
 
  // wandelt MS in Minuten und Sektunden um
  function GetMSToMinSek(ms:Integer; mo:boolean; ms2:Integer):String;
 
  // Macht aus einer TStringList.Text eigenschaft ein String
  function TStringsToStr(strings:TStrings):String;
  // macht aus einem text einen TSTringList.text
  function StrToTSTrings(text:String):TStrings;
  // sucht nach einem zeichen und gibt das was nach dem angeben zeichen zurück
  // bis zu einmen endzeichen
  procedure GetCharToken(astr:String;aStartChar,aEndChar:Char;aData:TSTringList);
Dateianhänge
Tools_neu.pas
(14.07 KiB) 94-mal heruntergeladen
MFG
Michael Springwald

Antworten