Importwerkzeuge

RegEx (TMS)

Inhalte werden von Phrase Language AI maschinell aus dem Englischen übersetzt.

Der regulärer Ausdruck (abgekürzt RegEx oder RegEx) ist eine Zeichenfolge, die ein Suchen vor allem für das Matching mit Strings oder Zeichenfolgen verwendet. Die Funktionalität ähnelt dem Suchen und Ersetzen komplexer und spezifischer Operationen oder dem Ausschluss bestimmter Inhalte. Eine detaillierte Beschreibung der RegEx und eine Tabelle der verwendeten Zeichen findest du im Eintrag der Wikipedia.

Um jeweils mehrere RegEx zu verwenden, fügen Sie ein Zeichen | zwischen die Pipeline ein.

RegEx-Dateien können in den Filter-, Such- und Ersetzungsfeldern im CAT Desktop Editor, im Ausgangs- und Zielfeld der Funktion „Suche nach Inhalt“, für die Funktion „In Tag s konvertieren“ in d en Importei nstellungen für unterstü Anpassen von Segmenti erungsregeln verwendet werden.

Wichtig

Phrase unterstützt Java RegEx, wird aber komplexe reguläre Ausdrücke zurückweisen, um das System vor Überlastung zu schützen. Komplexe RegEx sind solche mit Quantifikatoren (außer Possessiven) auf Gruppen, die andere Quantifikatoren (außer Possessiven) enthalten.

Allgemeine Beispiele

Beispiele für die Umwandlung von Text in Tags beim Importieren von Dateien und die Verwendung von RegEx im Editor zum Suchen und ersetzen:

Beispiel

Beschreibung

<[^>]+>

represents <html_tag>

\{[^\}]+\}

für {Variable} steht,

\[[^\]]+\]

für [Variable] steht,

\[\[.+?\]\]

steht für [[aa[11]bb]].

\$[^\$]+\$

steht für $operator_Name1$.

\d+

steht für Zahlen. Also, [0-9]+

[A-Za-z0-9]

steht für ein beliebiges alphanumerisches Zeichen.

.+\@.+\..+

email address name@domain.com

\d{4}[-]\d{2}[-]\d{2}

Datum 2018-08-01

\s$

Leerzeichen am Ende des Segments

^\s

Leerzeichen am Anfang des Segments

\s\s

ein doppeltes Leerzeichen

^\d

eine Ziffer am Anfang des Segments

\w+\s\s\w+

ein doppeltes Leerzeichen zwischen Wörtern

\s\n

Zeilenvorschub mit Leerzeichen

\S\n

Zeilenvorschub mit Leerzeichen

<[^>]+>|\$[^=]+=

konvertiert PHP Variablen und HTML Code ($svariable['name'] =)

^\s*\'[^:]+:

konvertiert den Feld Key von Javascript mit hinzugefügten Leerzeichen am Zeilenanfang ( 'Key' :)

\{\{[^\}]+\}\}|\'[^']+\'

übersetzt {{text here}}'{{text here}} Inhalte nicht und konvertiert sie in Tags

TXT-Import

Beispiele für reguläre Ausdrücke beim Import eines bestimmten Textes:

  1. ## Fehlermeldung ##1## Die Zahl muss größer als 0 sein. ##Z##

    Um Text zwischen #1## und #Z## zu importieren, verwenden Sie regexp: (?<=#1## ).*(?=#Z##)

  2. Fehlermeldung („Die Zahl muss höher als 0 sein.“)

    Um Text zwischen (" und ") zu importieren, verwende RegEx: (?<=\(").*(?="\))

  3. 'errorMessage' = 'Die Zahl muss höher als 0 sein.'

    Um Text nach dem = Zeichen und zwischen ' und ' zu importieren, verwende regexp: (?<=\= ').*(?=')

  4. errorMessage = "Dies ist zu übersetzen"

    Um Text nach dem Zeichen = und zwischen ' und' zu importieren, verwende RegEx: (?<=\= ").*(?=")

  5. msgstr ("Die Zahl muss höher als 0 sein.")

    Um msgstr Strings in einsprachigen AB zu importieren, verwenden Sie regexp: (?<=msgstr ").*(?=")

  6. # Hinweis: Dies ist ein Hinweis

    Um Zeilen auszuschließen, die mit # beginnen, verwenden Sie RegEx: (^[^#].*)

  7. Werte '126', 'DCeT', 'Text (de)'

    Um nur Text in Angeboten und mit (en) zu importieren, z. B. Text (en)', verwenden Sie RegEx: (?<=')[^']*\(en\)(?=')

JSON importieren

JSON-Strukturbeispiel:

{
"list": {
        "id": "1",
        "Wert": "Text 1 zur Übersetzung."
        },
"text": {
        "id": "2",
        "Wert": "Text 2 zur Übersetzung."
        },
"menu": {
        "id": "3",
        "Wert": "Text 3 zur Übersetzung."
         },"array": ["blue","green"],"arrays": [{        "color": "blue",        "title": „BLAU“
         },         {        "color": "green",        "title": „GRÜN“ } ]}
  • für den Import aller Werte unabhängig von der Stufe verwenden: (^|.*/)Wert

  • für den Import nur eines Wertes aus einer Liste verwenden: Liste / Wert

  • für den Import eines Wertes aus einer Liste und/oder einem Menü den Operator | (ODER): Liste/Wert|Menü/Wert verwenden

  • für den Import nur der ersten Instanz eines Wertes aus einem Menü verwenden: menu\[1\]/value

  • für den Import des Inhalts eines JSON-Arrays nach einem bestimmten Key verwenden: (^|.*/)array\[.*\]

  • um den Inhalt eines bestimmten Arrays von Objekten zu importieren: (^|.*/)Arrays\[.*\].*

YAML importieren

YAML Fliegenbeispiel:

title: A
Text: übersetzen A
Kategorien:
  title: B
  Text: übersetzen B
Kategorien:
  title: C
  Text: übersetzen C
Kategorien:
  Inhalt:
      title: D
      Text: übersetzen D

RegEx für den Import:

  • nur "Übersetzen A": Text

  • nur 'translate C': categories\[2\]/text

  • nur 'translate D': categories\[\d+\]/content[\1\]/text

  • alle Texte: text|categories\[\d+\]/text|categories\[\d+\]/content[\d+\]/text

Segmentierungsregeln

Zur Segmentierung von .SRX-Dateien werden Okapi, Java und Unicode verwendet.

Die Verwendung von RegEx in .SRX-Dateien ist komplex, und es wird empfohlen, vor dem Job mit regulären Ausdrücken Grundkenntnisse zu verwenden.

Nobreak-Regeln (Abkürzungen usw.) und Break-Regeln (Ende des Satzes mit einem Punkt usw.) befinden sich in .SRX-Dateien.

Beispiel

Beschreibung

[\p{C}]

Unsichtbares Zeichen.

[\p{Z}]

Leerzeichen

[\p{Lu}]

Ein Großbuchstabe mit einer Kleinbuchstabenvariante.

[\p{N}]

Jede Art von numerischen Zeichen.

\Q ... \E

Anfang und Ende eines Angebots – (\QApprox.\E). Dies wird für Abkürzungen verwendet.

\t

Tabulator

\n

Neu

\u2029

Absatztrennzeichen

\u200B

Leerzeichen ohne Breite

\u3002

Ideografische Vollbremsung

\ufe52

Kleine Vollbremsung

\uff0e

Vollständige Anschlagbreite

\uff61

Halfwidth ideographic full stop

\ufe56

Kleines Fragezeichen

\uff1f

Fragezeichen für vollständige Breite

\u203c

Doppeltes Ausrufezeichen

\u2048

Ausrufezeichen in Frage stellen

\u2762

Schwere Ausrufezeichenverzierung

\u2763

Schweres Herz Ausrufezeichen Ornament

\ufe57

Kleines Ausrufezeichen

\uff01

Ausrufezeichen für vollständige Breite

Gemeinsame benutzerdefinierte QA Prüfungen

QA Prüfung

Ausgangssprache RegEx

RegEx Zielsprache

Zusätzliche Ziffern in Zielsprache

\d

\d

Tags Reihenfolge (unpaarig)

^.*\{1\}.*\{2\}.*$

^.*\{1\}.*\{2\}.*$

Tags Reihenfolge (unpaarig)

^.*\{1\}.*\{2\}.*\{3\}.*$

^.*\{1\}.*\{2\}.*\{3\}.*$

Tags Reihenfolge (unpaarig)

^.*\{1\}.*\{2\}.*\{3\}.*\{4\}.*$

^.*\{1\}.*\{2\}.*\{3\}.*\{4\}.*$

Tags Reihenfolge (paarweise)

^.*\{1\&gt;.*\&lt;1\}.*\{2\&gt;.*\&lt;2\}.*$

^.*\{1\&gt;.*\&lt;1\}.*\{2\&gt;.*\&lt;2\}.*$

Tags Reihenfolge (paarweise)

^.*\{1\&gt;.*\&lt;1\}.*\{2\&gt;.*\&lt;2\}.*\{3\&gt;.*\&lt;3\}.*$

^.*\{1\&gt;.*\&lt;1\}.*\{2\&gt;.*\&lt;2\}.*\{3\&gt;.*\&lt;3\}.*$

Leerzeichen vor Tags

\s(\{[1-9][0-9]*\}|\{[1-9][0-9]*>|<[1-9][0-9]*\}|\{[biu_\^]{1,4}>|<[biu_\^]{1,4}\})

\s(\{[1-9][0-9]*\}|\{[1-9][0-9]*>|<[1-9][0-9]*\}|\{[biu_\^]{1,4}>|<[biu_\^]{1,4}\})

Leerzeichen nach Tags

(\{[1-9][0-9]*\}|\{[1-9][0-9]*>|<[1-9][0-9]*\}|\{[biu_\^]{1,4}>|<[biu_\^]{1,4}\})\}

(\{[1-9][0-9]*\}|\{[1-9][0-9]*>|<[1-9][0-9]*\}|\{[biu_\^]{1,4}>|<[biu_\^]{1,4}\})\}

Kein Leerzeichen vor Tags

\S(\{[1-9][0-9]*\}|\{[1-9]*>|<[1-9][0-9]*\}|\{[biu_\^]{1,4}>|<[biu_\^]{1,4}\})

\S(\{[1-9][0-9]*\}|\{[1-9]*>|<[1-9][0-9]*\}|\{[biu_\^]{1,4}>|<[biu_\^]{1,4}\})

Fehlende eckige Klammern

[^\[\]]*\[[^\[\]]*\][^\[\]]*

[^\[\]]*\[[^\[\]]*\][^\[\]]*

Fehlende runde Klammern

[^\(\)]*\([^\(\)]*\)[^\(\)]*

[^\(\)]*\([^\(\)]*\)[^\(\)]*

War dieser Beitrag hilfreich?

Sorry about that! In what way was it not helpful?

The article didn’t address my problem.
I couldn’t understand the article.
The feature doesn’t do what I need.
Other reason.

Note that feedback is provided anonymously so we aren't able to reply to questions.
If you'd like to ask a question, submit a request to our Support team.
Thank you for your feedback.