Ich werke seit kurzer Zeit an der Extended String Lib, oder kurz ESL. Inspiriert wurde ich von Kallewirschs Eingaben begrenzen-Thread. Dass die Lib prigrammiertechnisch nicht allzu anspruchsvoll ist, ist mir klar, aber sie erspart Schreibarbeit.
Die Funktionen der aktuellen Version v1.00.64:
- ESL_IsFloatString(StringToExamine.s): Prüft den StringToExamine, ob er eine gültige Kommazahl ist. Dabei muss mindestens eine Zahl und ein Komma vorliegen. Führende Nullen (0.812 = .812 = 0,812 = ,812) können dabei weggelassen werden. Ein negatives Vorzeichen ist ebenfalls eerlaubt.
- ESL_IsHexString(StringToExamine.s): Prüft den StringToExamine, ob er eine gültige hexadezimale Zahl enthält. Es muss mindestens ein gültiges Zeichen (a-f, A-F, 0-9) vorliegen.
- ESL_IsNumberString(StringToExamine.s): Prüft den StringToExamine, ob er eine gültige, nicht-Fließkommazahl beinhaltet. Dabei muss mind. 1 Zahl vorkommen. Minus-Vorzeichen ist ebenfalls erlaubt.
- ESL_IsIsPureString(StringToExamine.s): Prüft den StringToExamine, ob er ein "purer" String ist. Es muss zumindest ein Buchstabe (A-Z und a-z) vorkommen, alle anderen Zeichen sind verboten.
- ESL_IsPureStringIgnoreSpaces(StringToExamine.s): Selbiges wie oben, nur sind auch Leerzeichen erlaubt.
- ESL_IsPureLCaseString(StringToExamine.s): Wie IsPureString, aber nur kleingeschriebene Zeichen sind gültig.
- ESL_IsPureLCaseStringIgnoreSpaces(StringToExamine.s): Selbiges wie oben, nur sind auch Leerzeichen erlaubt.
- ESL_IsPureUCaseString(StringToExamine.s): Wie IsPureString, aber nur großgeschreibene Zeichen sind gültig.
- ESL_IsPureUCaseStringIgnoreSpaces(StringToExamine.s): Selbiges wie oben, nur sind auch Leerzeichen erlaubt.
- ESL_IllegalStringCharacter(StringToExamine.s, BadString.s): Prüft den StringToExamine, ob der BadString darin vorkommt. Wenn ja wird #True zurückgegeben, ansonsten #False.
- ESL_IllegalStringCharacterAt(StringToExamine.s, BadString.s): Prüft den StringToExamine, ob der BadString darin vorkommt. Wenn ja wird die Postition zurückgegeben, ansonsten #False.
- ESL_StartWith(StringToExamine.s, StartString.s): Prüft den StringToExamine, ob er mit StartString beginnt.
- ESL_StartWithIgnoreCase(StringToExamine.s, StartString.s): Selbiges wie oben, nur wird Groß-/Kleinschreibung ignoriert.
- ESL_EndWith(StringToExamine.s, End.s): Prüft den StringToExamine, ob er mit EndString endet.[/b]
- ESL_EndWithIgnoreCase(StringToExamine.s, EndString.s): Selbiges wie oben, nur wird Groß-/Kleinschreibung ignoriert.
- ESL_Equal(String1.s, String2.s): Einfacher If-Vergleich dder beiden Strings. Nur der Vollständigkeit halber.
- ESL_EqualIgnoreCase(String1.s, String2.s): Vergleicht die 2 Strings. Groß-/Kleinschreibung ist wurscht.
- ESL_UHex(Value.q [, Type]): Selbiges wie Hex(). Ist nur der Vollständigkeit halber dabei.
- ESL_LHex(Value.q [, Type]): Selbiges wie Hex(), nur sind alle Buchstaben im Rückgabewert klein gschrieben.
- ESL_UCaseFirst(String.s): Macht den 1. Buchstaben des Strings zu einem Großbuchstaben, und lässt den Rest so wie er ist.
- ESL_LCaseFirst(String.s): Macht den 1. Buchstaben des Strings zu einem Kleinbuchstaben, und lässt den Rest so wie er ist.
- ESL_MakeName(String.s): Macht den 1. Buuchstaben des Strings zu einem Großbuchstaben und den Rest zu lauter Kleinbuchstaben. Nützlich für z. B. Highscores.
- ESL_FillString(StringToFill.s, Food.s): Füllt den StringToFill mit dem angegebenen Food.
- ESL_FillStringChar(StringToFill.s, Food.a): Selbiges wie oben, nur sollte Food ein ASCII-Code sein.
Download:

Bugs, Anregungen, Herummeckereien:

MfG, Mok