Wikipedia:Lua/Modul/Str
Vorlagenprogrammierung | Diskussionen | Lua | Unterseiten | |||
Modul | Deutsch | English
|
Modul: | Dokumentation |
Dieses Modul dient der Implementierung der Stringfunktionen in andere Vorlagen.
Exportierte Funktionen
len
Gibt die Länge eines Strings zurück.
Parameter
- frame: Frame, der die Argumente der Invoke-Funktion bereithält
Argumente
- 1: der String
Rückgabewert
Die Länge des Strings.
left
- Gibt die ersten N Zeichen eines Strings wieder.
- Hier wird die Restlänge als Argument übergeben.
- Eine Funktion mit der Anzahl der abzutrennenden Zeichen als Argument ist unter
crop
zu finden.
Parameter
- frame: Frame, der die Argumente der Invoke-Funktion bereithält
Argumente
- 1: der String
- 2: Anzahl der restlichen Zeichen
Rückgabewert
Entsprechend gekürzter String.
right
Gibt die letzten n Zeichen eines Strings wieder. Diese Funktion entspricht nicht der Vorlage:Str right. Siehe dazu auch Funktion cropleft
.
Parameter
- frame: Frame, der die Argumente der Invoke-Funktion bereithält
Argumente
- 1: der String
- 2: Anzahl der restlichen Zeichen
Rückgabewert
Entsprechend gekürzter String.
crop
- Kürzt einen String rechts um eine bestimmte Anzahl Zeichen.
- Hier wird die Länge des abzutrennenden Teilstrings als Argument übergeben.
- Eine Funktion mit der Anzahl der übrigbleibenden Zeichen als Argument ist unter
left
zu finden.
Parameter
- frame: Frame, der die Argumente der Invoke-Funktion bereithält.
Argumente
- 1: der String
- 2: Anzahl der abzutrennenden Zeichen
Rückgabewert
Der gekürzte String.
cropleft
- Kürzt einen String links um eine bestimmte Anzahl Zeichen.
- Hier wird die Länge des abzutrennenden Teilstrings als Argument übergeben.
- Eine Funktion mit der Anzahl der übrigbleibenden Zeichen als Argument ist unter
right
zu finden. - Diese Funktion entspricht im Wesentlichen der Vorlage:Str right.
Parameter
- frame: Frame, der die Argumente der Invoke-Funktion bereithält
Argumente
- 1: der String
- 2: Anzahl der abzutrennenden Zeichen
Rückgabewert
Entsprechend gekürzter String.
index
Gibt das Zeichen an einer bestimmten Position im String wieder.
Parameter
- frame: Frame, der die Argumente der Invoke-Funktion bereithält
Argumente
- 1: der String
- 2: Position des Zeichens
Rückgabewert
Das Zeichen an der gegebenen Position.
sub
- Gibt einen Teil eines Strings wieder.
- Das ist die allgemeine Teilstringfunktion.
Parameter
- frame: Frame, der die Argumente der Invoke-Funktion bereithält
Argumente
- 1: der String
- 2: Position des ersten Zeichens des Teilstrings
- 3: Länge des Teilstrings
Rückgabewert
Entsprechender Teilstring.
hex2dez
Wandelt eine als String übergebene Hexadezimalzahl in eine Dezimalzahl um. Im Fehlerfall wird Null zurückgegeben.
Parameter
- frame: Frame, der die Argumente der Invoke-Funktion bereithält
Argumente
- 1: der String
Rückgabewert
Die Zahl.
replace
Ersetzt in einem String einen Teilstring durch einen anderen.
Parameter
- frame: Frame, der die Argumente der Invoke-Funktion bereithält
Argumente
- 1: der String
- 2: der zu suchende Teilstring
- 3: der einzusetzende Teilstring
- 4: (maximale) Anzahl der Ersetzungen
Rückgabewert
Der geänderte String.
round
Rundet eine als Zeichenkette übergebene Zahl auf die angegebene Dezimalstelle und gibt im Unterschied zur Parserfunktion auch abschließende Nullen zurück. Ist der Eingabestring nicht als Zahl interpretierbar, wird "NaN" (für "not a Number") zurückgegeben.
Parameter
- frame: Frame, der die Argumente der Invoke-Funktion bereithält
Argumente
- 1: der Eingabestring
- 2: die Dezimalstelle, auf die gerundet werden soll. Ganze Zahl, negative Zahl bedeutet vor dem Komma.
Rückgabewert
Die gerundete Zahl als String.
match
Filtert einen Teilstring aus einem übergebenen String mittels eines regulären Ausdrucks (Regex) heraus. Die unterstützten Sprachelemente des regulären Ausdrucks finden sich unter mw:Extension:Scribunto/Lua reference manual #Patterns, erweitert unter die in mw:Extension:Scribunto/Lua reference manual #Ustring patterns beschriebenen Unicode-Eigenschaften. Die wichtigste Einschränkung ist das Lua-Regexe keine Alternativen (|
-Sprachelement) unterstützen.
Parameter
- frame: Frame, der die Argumente der Invoke-Funktion bereithält
Argumente
- 1: der Eingabestring
- 2: der anzuwendende reguläre Ausdruck
- 3 (optional): Wenn mittels Klammerung mehrere Gruppen definiert wurden, kann die zurückzugebende Gruppe hier angegeben werden. Falls nicht angegeben, wird 0 (= alle Teilstrings) angenommen.
Rückgabewert
Ein gemäß dem angegebenen Regex gefilterter Teilstring.
Beispiele:
Eingabe | Ausgabe | Erklärung |
---|---|---|
{{#invoke:Str|match|eine Zeichenkette als Test|%u%l+}}
|
Zeichenkette | erstes Wort, das mit einem Großbuchstaben beginnt |
{{#invoke:Str|match|Russische Sprache (русский язык)|[Ѐ-ӿ]+}}
|
русский | erste Zeichenfolge aus dem Unicodeblock Kyrillisch |
{{#invoke:Str|match|Beispieltext|(Bei).+(text)|2}}
|
text | zweite Gruppe zurückgeben |
{{#invoke:Str|match|Beispieltext|(Bei).+(text)|0}}
|
Beitext | alle Gruppen zurückgeben |
- Der nachstehende Abschnitt wird automatisch in jede Dokumentation zur Vorlagenprogrammierung eingebunden.
Allgemeine Hinweise zur Einbindung von Modulen
Eine Einbindung erfolgt jeweils im Format
{{#invoke: Str |
Funktionsname | Wert1 | Wert2 | NameX=Wert … }}
Die Parameter können wie bei Vorlagen benannt oder unbenannt sein; deren Regeln gelten analog.
Wenn unbekannte Zeichenketten von außen kommen (als Vorlagenparameter), sollte immer mit der Form 1=
Wert gearbeitet werden.
Zu allgemeinen Problemen beachte die Abhilfen wie bei Vorlagen.
Wenn in einer Vorlage ein Modul verwendet wird, sollte auch immer die Vorlage:Dokumentation/Lua in der Dokumentationsseite eingebunden werden.
- Das gibt einem Programmierer Aufschluss, dass ein Lua-Modul benutzt wird, welche/s und ggf. welche Einzelfunktion daraus, und verlinkt auf die Dokumentation.
- Die Modul-Dokumentationen bekommen ein Link, in welchen Vorlagen sie eingesetzt werden, und wo bei eventuellen Funktionsänderungen Anpassungen erforderlich werden.
- Die Vorlage wird zur Übersicht kategorisiert in Kategorie:Vorlage:mit Lua-Programmierung.
Zu weiteren Informationen siehe Hilfe:Lua.
Bei Problemen wende dich bitte an die Vorlagen-Werkstatt, in schweren Fällen hilft auch die Lua-Werkstatt.