Importer des services

Regexp (TMS)

Le contenu est traduit de l’anglais par Phrase Language AI.

Le expression régulière (abrégé en regex ou expreg) est une séquence de caractères qui forment un modèle de recherche principalement pour une utilisation dans la correspondance de modèles avec chaînes ou chaîne-matching. La fonctionnalité est similaire pour trouver et remplacer des opérations avec plus de complexité et de spécificité. Voir l’entrée wikipedia pour une description détaillée de expreg et un tableau des caractères utilisés.

À utiliser plusieurs regexp à la fois, insérer un caractère de pipeline | entre elles.

Les regexps peuvent être utilisées dans les champs de filtre, de recherche et de remplacement dans l’éditeur de bureau TAO, dans les champs source et cible de la fonction, chercher pour contenu, pour la fonction Convertir en balises dans Fichier paramètres d'importation et pour personnaliser les règlesde segmentation.

Important

Phrase prend en charge Java expreg, mais rejeter des expressions régulières complexes pour protéger le système contre la surcharge. Les regexps complexes sont celles avec quantificateurs (sauf possessifs) sur des groupes qui contiennent d’autres quantificateurs (sauf possessifs).

Exemples généraux

Exemples de conversion de texte en balises lors de l’importation de fichiers et de l’utilisation de expreg dans l’éditeur pour les fonctions de recherche et de remplacement :

Exemple

Description

<[^>]+>

représente <html_tag>

\{[^\}]+\}

représente {variable},

\[[^\]]+\]

représente [variable],

\[\[.+?\]\]

représente [[aa[11]bb]].

\$[^\$]+\$

représente $operator_Name1$.

\d+

représente des nombres. Aussi, [0-9]+

[A-Za-z0-9]

représente n’importe quel caractère alphanumérique.

.+\@.+\..+

Adresse électronique name@domain.com

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

La date 2018-08-01

\s$

un espace blanc à la fin de la segment

^\s

un espace blanc au début de la segment

\s\s

un double espace blanc

^\d

un chiffre au début de la segment

\w+\s\s\w+

Un double espace blanc entre mots

\s\n

une nouvelle ligne précédée d’un caractère espace blanc

\S\n

une nouvelle ligne précédée d’un caractère non espace blanc

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

Convertit le code PHP variables et HTML ($svariable['name'] =)

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

Convertit le champ JavaScript clé avec ajouté espaces au début de la ligne ('Key' :)

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

ne traduit {{text here}} pas '{{text here}} contenu et le convertit en balises

Importation TXT

Exemples d’expressions régulières lors de l’importation d’un texte spécifique :

  1. ## Message d’erreur ##1## Le nombre doit être supérieur à 0. ##Z##

    À importer texte entre ##1## et ##Z## ,utilisez expreg: (?<=##1## ).*(?= ##Z## ,)

  2. ErrorMessage (« Le nombre doit être supérieur à 0. »)

    À importer texte entre ( » et « ) , utilisez expreg: (?<=\(« ).*(?="\))

  3. 'errorMessage' = 'Le nombre doit être supérieur à 0.'

    À importer texte après le signe = et entre ' et ' , utilisez expreg: (?<=\= ').*(?= ') ,

  4. errorMessage = «ceci doit être traduit»

    À importer texte après le signe = et entre 'et'utilisez expreg: (?<=\= « ).*(?= »)

  5. msgstr (« Le nombre doit être supérieur à 0. »)

    À importer msgstr chaînes dans des fichiers BDC monolingues à l’aide d’un filtre TXT, utilisez expreg : (?<=msgstr « ).*(?= »)

  6. # Remarque : C’est un note

    À exclure les lignes commençant par # , utilisez expreg: (^[^# , ].*)

  7. valeurs '126', 'DCeT', 'Text (en)'

    À importer uniquement du texte entre guillemets et avec (en), tel que Text (en)' utiliser expreg: (?<=')[^']*\(en\)(?='),

Importation JSON

Exemple de structure JSON :

{
"list": {
        "id": "1",
        « value »: « texte 1 à traduire. »
        },
"text": {
        "id": "2",
        « value »: « texte 2 à traduire. »
        },
"menu": {
        "id": "3",
        « value »: « texte 3 à traduire. »
         },"array": ["blue","green"],"arrays": [{        "color": "blue",        "title": « BLEU »
         },         {        "color": "green",        "title": « VERT » } ]}
  • Pour importer chaque valeur quel que soit le niveau, utilisez : (^|. */)valeur

  • Pour importer une seule valeur d’une liste, utilisez : liste/valeur

  • Pour importer une valeur à partir d’une liste et/ou d’un menu, utilisez le | (OU) opérateur : liste/valeur|menu/valeur

  • Pour importer uniquement la première instance d’une valeur à partir d’un menu, utilisez : menu\[1\]/value

  • pour importer le contenu d’un tableau JSON suivant un certain clé, utilisez : (^|. */)tableau\[.*\]

  • Pour importer la contenu d’une spécifique tableau d’objets, utilisez : (^|. */)arrays\[.*\].*

Importation YAML

Exemple de mouche YAML :

titre: A
texte : traduire A
Catégories:
  titre: B
  texte: traduire B
Catégories:
  titre: C
  texte: traduire C
Catégories:
  contenu :
      titre: D
      texte: traduire D

expreg pour l’importation :

  • seulement 'traduire A' : texte

  • seulement 'traduire C': catégories\[2\]/texte

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

  • Tout le texte : texte|catégories\[\d+\]/texte|catégories\[\d+\]/contenu[\d+\]/texte

Règles de segmentation

Okapi, Java et Unicode sont utilisés pour les règles de segmentation dans . SRX.

Utilisation de expreg dans . Les fichiers SRX sont complexes et une connaissance de base de expression régulière utilisation est recommandée avant d’essayer d’en travail.

Les règles Nobreak (Abréviations, etc.) et les règles de rupture (Fin de la phrase avec un point, etc.) sont dans . SRX.

Exemple

Description

[\p{C}]

Caractère de contrôle invisible.

[\p{Z}]

Espaces

[\p{Lu}]

Lettre majuscule comportant une variante minuscule.

[\p{N}]

Tout type de caractère numérique.

\Q ... \E

Début et fin d’un devis - (\QApprox.\E). Ceci est utilisé pour les abréviations.

\t

Tabulatrice

\n

Newline

\u2029

Séparateur de paragraphes

\u200B

Espace de largeur nulle

\u3002

Point idéographique

\ufe52

Petit point complet

\uff0e

Point plein champ pleine largeur

\uff61

Point idéographique demi-chasse

\ufe56

Petit point d’interrogation

\uff1f

Point d’interrogation pleine chasse

\u203c

Double point d’exclamation

\u2048

Point d’exclamation

\u2762

Ornement de point d’exclamation lourd

\u2763

Ornement de point d’exclamation de cœur lourd

\ufe57

Petit point d’exclamation

\uff01

Point d’exclamation pleine largeur

Contrôles AQ personnalisés courants

AQ vérifier

Source Regexp

Regexp cible

Numéros supplémentaires dans cible

\d

\d

Tags commande (non appariés)

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

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

Tags commande (non appariés)

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

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

Tags commande (non appariés)

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

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

Tags commande (jumelés)

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

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

Tags commande (jumelés)

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

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

Espaces avant balises

\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}\})

Espaces après balises

(\{[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}\})\s

Pas d’espace avant balises

\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}\})

Manquant crochets

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

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

Manquant crochets ronds

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

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

Cet article vous a-t-il été utile ?

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.