Importer des services

Expreg (TMS)

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

L'expression régulière (abrégée en regex ou regexp) est une suite de caractères qui forme un modèle Cherchant principalement à utiliser dans la correspondance de modèle avec Strings ou la correspondance de chaîne. Les fonctionnalités sont similaires pour trouver et remplacer les opérations avec plus de complexité et de spécificité ou comme méthode pour exclure le contenu défini. Voir l'entrée wikipédia pour une description détaillée des expreg et un tableau des caractères utilisés.

Pour utiliser plusieurs expreg à la fois, insérez un caractère pipeline | entre elles.

Les expreg peuvent être utilisées pour filtrer, Chercher et remplacer les champs dans l'éditeur de bureau TAO, dans les champs source et cible de la fonctionnalité Chercher du contenu, pour la fonction Convertir en balises dans les File Import et pour personnaliser les règles de segmentation.

Important

Phrase prend en charge les regexp Java, mais rejettera les expressions régulières complexes pour protéger le système contre les surcharges. Les expreg complexes sont celles avec des 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 d'utilisation d'expreg dans l'éditeur pour Chercher et remplacer des fonctions :

Exemple

Description

<[^>]+>

represents <html_tag>

\{[^\}]+\}

représente {variable},

\[[^\]]+\]

représente [variable],

\[\[.+?\]\]

represents [[aa[11]bb]].

\$[^\$]+\$

représente $nom_opérateur1$.

\d+

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

[A-Za-z0-9]

représente tout caractère alphanumérique.

.+\@.+\..+

adresse e-mail name@domain.com

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

la date 2018-08-01

\s$

un espace blanc à la fin du segment

^\s

un espace blanc au début du segment

\s\s

un double espace

^\d

un chiffre au début du segment

\w+\s\s\w+

un double espacement entre les mots

\s\n

un saut de ligne précédé de tout caractère d'espacement

\S\n

un saut de ligne précédé de tout caractère non-espacement

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

convertit les variables PHP et le code html ($svariable['name'] =)

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

convertit la clé de champ javascript avec ajout d'espaces blancs en début de ligne ( 'clé' :)

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

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

TXT Importer

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##

    Pour importer du texte entre ##1## et ##Z## ,utilisez regexp : (?<=##1## ).*(?= ##Z##)

  2. Message d'erreur (« Le nombre doit être supérieur à 0. »)

    Pour importer du texte entre (" et ") , utilisez regexp: (?<=\(").*(?="\)

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

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

  4. errorMessage = "cela doit être traduit"

    Pour importer du texte après le signe = et entre 'et' utilisez regexp: (?<=\= ").*(?=")

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

    Pour importer msgstr Strings dans des fichiers BDC monolingues à l'aide d'un filtre TXT, utilisez regexp: (?<=msgstr ").*(?=")

  6. # Note : Ceci est une note

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

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

    Pour importer uniquement du texte entre guillemets et avec (fr), comme Text (fr)' utilisez regexp: (?<=')[^']*\(fr\)(?=')

JSON Importer

Exemple de structure JSON :

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

  • pour importer une seule valeur depuis une liste, utiliser : liste/valeur

  • pour l’importation d’une valeur depuis une liste et/ou un menu, utilisez l’opérateur | (OU) : liste/valeur|menu/valeur

  • pour importer uniquement la première instance d'une valeur depuis un menu, utilisez : menu\[1\]/valeur

  • pour l'importation du contenu d'un tableau JSON suivant une certaine clé, utiliser : (^|.*/)tableau\[.*\]

  • pour importer le contenu d’un tableau spécifique d’objets, utilisez : (^|.*/)tableaux\[.*\].*

YAML Importer

Exemple de mouche YAML :

title: A
texte : traduire A
catégories :
  title: B
  texte : traduire B
catégories :
  title: C
  texte : traduire C
catégories :
  contenu :
      title: D
      texte : traduire D

expreg pour l’importation :

  • uniquement 'traduire A' : texte

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

  • 'traduire D' uniquement : catégories\[\d+\]/contenu[\1\]/texte

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

Segmentation Rules

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

Utiliser regexp dans des fichiers .SRX est complexe et une connaissance de base des expressions régulières utilisées est recommandée avant de tenter de travail avec eux.

Les règles Nobreak (abréviations, etc.) et Break (fin de phrase par un point, etc.) sont des fichiers .SRX.

Exemple

Description

[\p{C}]

Caractère invisible de contrôle.

[\p{Z}]

Espace blanc

[\p{Lu}]

Une lettre majuscule qui a une variante minuscule.

[\p{N}]

Tout type de caractère numérique.

\Q ... \E

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

\t

Tabulateur

\n

Newline

\u2029

Séparateur de paragraphe

\u200B

Espace à largeur nulle

\u3002

Plein arrêt idéographique

\ufe52

Petit arrêt complet

\uff0e

Fullwidth full stop

\uff61

Point plein idéographique demi-largeur

\ufe56

Petit point d'interrogation

\uff1f

Point d'interrogation pleine largeur

\u203c

Double point d'exclamation

\u2048

Point d'exclamation d'interrogation

\u2762

Ornement lourd de point d'exclamation

\u2763

Ornement de point d'exclamation de coeur lourd

\ufe57

Petit point d'exclamation

\uff01

Point d'exclamation pleine largeur

Vérifications de QA personnalisées courantes

Vérification QA

Source Regexp

Expreg cible

Chiffres supplémentaires en cible

\d

\d

Commande balises (non appariée)

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

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

Commande balises (non appariée)

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

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

Commande balises (non appariée)

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

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

Commande balises (paire)

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

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

Commande balises (paire)

^.*\{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 les 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 les 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

Aucun Espace avant les 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}\})

Entre crochets manquants

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

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

Supports ronds manquants

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

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

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.