Get Translate Section
Zuletzt geändert: 23.05.2026 10:43

Übersicht

Get-TranslateSection #

ÜBERSICHT #

Extrahiert einen sprachspezifischen Textabschnitt aus einem mehrsprachigen FreiText gemäß EULANDA-Format.

SYNTAX #

Get-TranslateSection [[-Text] <string>] [[-Iso] <string>] [[-Sub] <string>] [[-SubDefault]
    <string>] [<CommonParameters>]

BESCHREIBUNG #

Die Funktion durchsucht einen in Abschnitte unterteilten Text nach einem bestimmten Sprach- und optionalen Sub-Tag. Die Trennung erfolgt über spezielle Marker wie ‘[DE]’, ‘[EN:TECHNIK]’ oder ‘[:INFO]’.

Format-Regeln:

  • Jeder Sprach-Marker steht alleine in einer eigenen Zeile. Tags inmitten von Text (z.B. Preis [DE] frei Haus) werden nicht erkannt und bleiben als Literal-Inhalt im Default-Block.
  • Iso-Code ist zwei Zeichen lang. Groß-/Kleinschreibung wird ignoriert, intern auf Großbuchstaben normalisiert.
  • Optionaler Sub-Identifier folgt nach Doppelpunkt: [DE:SHORT], [EN:TECHNIK]. Ohne Iso-Code ([:INFO]) gilt der Block für alle Sprachen – intern als Iso "00" geführt.
  • Alles, was vor dem ersten Tag steht, ist der Default-Block. Er wird nur dann als Fallback geliefert, wenn kein passender Tag im Text vorkommt und kein Sub-Tag angefragt wurde.

Beispiel-Aufbau eines mehrsprachigen Textes:

<Default-Inhalt – optional>
[DE]
Deutsche Beschreibung
mehrzeilig möglich
[EN]
English description
[DE:SHORT]
Kurztext
[:INFO]
Sprach-neutraler Hinweis

Ist der gewünschte Abschnitt nicht vorhanden, wird – falls der Text ohne Tag beginnt – der oberste Block (Default) verwendet. Ist ein Sub-Tag übergeben, wird stattdessen der Inhalt von ‘$SubDefault’ zurückgegeben, falls kein Treffer gefunden wurde.

Der Text ist typischerweise ein mehrsprachiges Feld aus einem EULANDA-System oder einem nachgelagerten Import/Export-Kontext, z.B. für Produktbeschreibungen, Zusatztexte oder HTML-Blöcke.

PARAMETER #

-Text #

Type: string

Der komplette mehrsprachige Textblock mit Sprachmarkierungen (z.B.. ‘[DE]’, ‘[EN:TECHNIK]’, …).

-Iso #

Type: string

Der gesuchte Iso-Sprachcode (zweistellig, z.B.. ‘DE’, ‘EN’, ‘FR’).

-Sub #

Type: string

Optionaler Sub-Identifier zur gezielteren Auswahl von Textblöcken, z.B.. ‘TECHNIK’, ‘INFO’, ‘KURZ’.

-SubDefault #

Type: string

Optionaler Rückfallwert, wenn kein Sub-Abschnitt gefunden wurde.

AUSGABEN #

string

Der extrahierte Abschnitt als Text, mit Zeilenumbrüchen als ‘CRLF’.

BEISPIELE #

# Gibt den ENGLISCHEN Technikabschnitt zurück ('[EN:TECHNIK]').
Get-TranslateSection -Text $beschreibung -Iso 'EN' -Sub 'TECHNIK'
# Gibt den Block mit '[DE]' zurück oder - wenn nicht vorhanden - den ersten Textabschnitt ohne Markierung.
Get-TranslateSection -Text $beschreibung -Iso 'DE'
# Gibt 'Pas d'information' zurück, wenn kein '[FR:INFO]'-Abschnitt gefunden wurde.
Get-TranslateSection -Text $beschreibung -Iso 'FR' -Sub 'INFO' -SubDefault 'Pas d\'information'

HINWEISE #

Diese Funktion ist für das mehrsprachige FreiTextmodell aus dem EULANDA ERP optimiert. Unterstützt Default-Texte sowie Iso-“00”- Blöcke (z.B. ‘[:TECHNIK]’) als Fallback für Sub-Bereiche. Die Funktion nutzt intern ‘Get-TranslateIsDelim’ und ‘Get-TranslateExtractTag’.

Verwandte Funktionen für Roundtrip-Bearbeitung (Excel-Pipeline u.ä.):

  • ConvertFrom-EulMultiLangText – zerlegt den Text in Sektionen (für Excel-Export pro Sprache eine Spalte)
  • ConvertTo-EulMultiLangText – setzt Sektionen wieder zu einem Tag-Block zusammen