[[http://www.siedler-games.de|{{:sg-link.jpg|}}]] ===== Die String-Funktionen ===== ==== Einleitung ==== FIXME Hier sollte noch ein einleitender Text hin! ---- ==== Funktionsübersicht ==== ^Funktion^Syntax^Beschreibung^ |**byte**|string.byte(_s [, _i])|Gibt den numerischen Code des _i-ten Zeichens des Strings _s zurück. Wenn _i nicht angegeben wird, den des ersten Zeichens| |**char**|string.char(_i1, _i2, ...)|Generiert aus den numerischen Zeichencodes _i1,_i2,... einen String| |**dump**|string.dump(_function)|Gibt eine binäre Repräsentation der Funktion _function zurück, sodaß ein späterer Zugriff auf den String eine Kopie der Funktion zurückliefert. _function muss eine LUA-Funktion ohne Zugriffsmöglichkeit auf lokale Variablen äußerer Funktionen sein| |**find**|string.find(_s, _pattern [, _init [, _plain]])|Sucht nach dem Vorkommen von _pattern in _s. Liefert im Erfolgsfall zwei Zahlenwerte zurück, die die Anfangs- und Endposition von _pattern in _s darstellen. Ansonsten wird nil zurückgegeben. Mit _init kann auch eine Position angegeben werden, ab der der Vergleich ausgeführt wird. Da _pattern auch ein Regulärer Ausdruck sein kann, und dies unter Umständen nicht gewünscht ist, kann dies durch die Angabe von _plain = true abgeschaltet werden. Wenn _plain verwendet wird, muss auch _init angegeben werden.| |**format**|string.format(_formatstring, _e1, _e2, ...)|Erzeugt aus den angegebenen Argumenten _e1, _e2, ... einen String, der gemäß den Angaben in _formatstring formatiert wird. Mögliche Formatangaben sind: c, d, E, e, f, g, G, i, o, u, X, und x jeweils als Zahlenwert und q und s jeweils als String.| |**gfind**|string.gfind(_s, _pat)|Gibt einen Suchmuster Zeiger zurück, der den angegebenen String _s nach Vorkommen des Suchmusters _pat durchsucht.| |**gsub**|string.gsub(_s, _pattern, _replace [, n])|In der einfachen Verwendung werden alle Vorkommen von _pattern im String _s durch den Wert _replace ersetzt. Zurückgegeben wird ein Wertepaar mit dem modifizierten String (als String) und der Anzahl der Modifizierungen (als Zahl).| |**len**|string.len(_s)|Gibt die Länge des Strings _s zurück.| |**lower**|string.lower(_s)|Wandelt alle Großbuchstaben im String _s in Kleinbuchstaben um.| |**rep**|string.rep(_s, _n)|Erzeugt einen String aus _n mal String _s miteinander verknüpft| |**sub**|string.sub(_s, _i [, _j])|Gibt einen Teilstring von String _s zurück, der an der Position _i beginnt, und wenn angegeben, an Position _j endet.| |**upper**|string.upper(_s)|Wandelt alle Kleinbuchstaben im String _s in Großbuchstaben um.| ---- ==== Beispiele & ausführliche Erläuterungen ==== FIXME Hier sollte zu jeder String-Funktion mind. 1 Beispiel hin. Zusätzlich sollten die Funktionen nochmals ausführlich dokumentiert werden! =====Patterns===== FIXME Ein einleitender Text wäre nicht schlecht. Und eine anständige Übersetzung für "pattern".\\ \\ ---- ==== Bedeutungen ==== * x (wenn x keines der reservierten Zeichen ^$()%.[]*+-? ist) --- Steht für x * . --- (Punkt) Steht für alle Zeichen. * %a --- Steht für alle Buchstaben. * %c --- Steht für alle Steuerungszeichen. * %d --- Steht für alle Ziffern. * %l --- Steht für alle Kleinbuchstaben. * %p --- Steht für alle Interpunktionszeichen. * %s --- Steht für alle Arten von Abständen. * %u --- Steht für alle Grossbuchstaben. * %w --- Steht für alle alphanumerischen Zeichen. * %x --- Steht für alle hexadezimalen Ziffern. * %z --- Steht für das Zeichen mit der Entsprechung 0. * %x (wenn x kein alphanumerisches Zeichen ist) --- Steht für x. Dies ist der verbreitetste Weg, um die reservierten Zeichen zu umgehen. Vor Interpunktionszeichen (vor keine reservierten natürlich) kann ein "%" geschrieben werden, wenn sie für sich selbst stehen sollen. FIXME Keine Lust jetzt, die Anwendungen hinzuschreiben. Mach ich vielleicht noch, wäre aber nett, wenn mir das jemand abnehmen würde.Sir Anguilla