Vorlage:Str replace

Aus SteinerWiki
Version vom 23. Juli 2023, 07:30 Uhr von Odyssee (Diskussion | Beiträge) (Die Seite wurde neu angelegt: „<onlyinclude><includeonly>{{#invoke:Str|replace|{{{1|}}}|{{{2|}}}|{{{3|}}}|{{{4|}}}|{{{5|}}}}}</includeonly></onlyinclude> {{Dokumentation}}“)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)

Dokumentation[Bearbeiten]
Diese Vorlage wurde ganz oder teilweise mit Hilfe der Programmiersprache Lua erstellt.
Die Module sind mit #invoke eingebunden. In der Dokumentation der einzelnen Module finden sich auch weitere Hinweise zu Rückfragen.

Diese Vorlage erlaubt das Ersetzen von Textteilen durch eine andere Zeichenkette.

Neben einer einfachen Ersetzung, kann zusätzlich eine Ersetzung mittels eines regulären Ausdrucks (Regex) erfolgen. Die unterstützten Sprachelemente des regulären Ausdrucks finden sich unter [1], erweitert unter die in [2] beschriebenen Unicode-Eigenschaften. Die wichtigste Einschränkung ist das Lua-Regexe keine Alternativen (|-Sprachelement) unterstützen.

Parameter

  • 1: Der Eingabetext.
  • 2: Der Teiltext, der ersetzt werden soll.
  • 3: Die Zeichenkette, durch die ersetzt wird.
  • 4: (optional) Anzahl der Ersetzungen. Wenn nicht angegeben, werden alle Vorkommen ersetzt.
  • 5: (optional) wenn mit einem Wert belegt (vorzugsweise 1 oder ja), dann wird Parameter 2 als regulärer Ausdruck interpretiert

Beispiele

Eingabe Ausgabe Erklärung
{{Str replace|Hallo Welt.|l|s}} Hasso West. ersetze alle Vorkommen von l durch s
{{Str replace|Hallo Welt.|l|s|2}} Hasso Welt. ersetze höchstens zwei Vorkommen von l durch s
{{Str replace|Hallo Welt.|[aoe]|||ja}} Hll Wlt. entferne alle Vokale (regulärer Ausdruck!)
{{Str replace|Hallo Welt.|[%s%p]|||ja}} HalloWelt entferne Leerraum, d.h. Leerzeichen, Zeilenumbrüche, Tabs, usw., sowie Interpunktionen (regulärer Ausdruck!)
{{Str replace|Hallo Welt.|%.|?||ja}} Hallo Welt? Wichtig: wenn reguläre Ausdrücke verwendet werden und Zeichen ersetzt werden sollen, die selber Teil des Zeichenvorrats für reguläre Ausdrücke sind, d.h. ^$.()[]?*+-, so müssen diese mit % escapet werden.
{{Str replace|Hallo Welt. Ich bin da!|([AEOIUaeoiu])|'''%1'''||ja}} Hallo Welt. Ich bin da! Suche alle Vokale, fasse diese zu einer Gruppe (markiert durch Klammerung) zusammen und gebe dann alle zu dieser ersten Gruppe (%1) gehörigen Teile fett aus.

Bei technischen Fragen zu dieser Vorlage kannst du dich an die Vorlagenwerkstatt wenden. Inhaltliche Fragen und Vorschläge gehören zunächst auf die Diskussionsseite.