L'expression régulière (abrégée en regex ou expreg) est une suite de caractères qui Forme un motif cherché principalement à Utiliser dans la correspondance de motifs avec Strings ou la correspondance de chaînes. La fonctionnalité est similaire À trouver et remplacer des opérations plus complexes et spécifiques ou comme méthode d'exclusion de contenu défini. Voir l'entrée Wikipedia pour une description détaillée d'expreg et un onglet des caractères Utilisés.
À Utiliser plusieurs expreg à la fois, insérez un caractère pipeline |
entre elles.
Regexps peut être Utilisé dans le filtre, 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 Fonctionnalité dans Fichier paramètres d'importation et pour personnaliser Règles de segmentation.
Important
Phrase supporte Java expreg, mais rejettera les expressions régulières complexes À protéger le système contre la surcharge. Les expreg complexes sont ceux avec des quantificateurs (sauf possessifs) sur des groupes qui contiennent d'autres quantificateurs (sauf possessifs).
Exemples pour convertir du texte en balises lorsqu'on importe fichiers et utiliser expreg dans l'Éditeur pour chercher et remplacer des fonctions:
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 tout 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 du segment |
^\s |
un espace blanc au début du segment |
\s\s |
un double espace blanc |
^\d |
un chiffre au début du segment |
\w+\s\s\w+ |
un double espace blanc entre mots |
\s\n |
un saut de nouveau précédé de tout caractère d'espace blanc |
\S\n |
une nouvelle précédée de tout caractère sans espace blanc |
<[^>]+>|\$[^=]+= |
convertit les variables PHP et le code html ($svariable['name'] =) |
^\s*\'[^:]+: |
convertit la clé de champ du javascript avec espaces blancs ajoutés en début de ligne ( 'clé :) |
\{\{[^\}]+\}\}|\'[^']+\' |
ne traduit pas le contenu {{text here}} '{{text here}} et le convertit Aux balises |
Exemples d'expressions régulières lorsqu'on importe un texte spécifique :
-
## Message d'erreur ##1## Le Nombre doit être supérieur à 0. ##Z##
À importer entre ##1## et ##Z## ,Utilisez regexp:
(?<=#1## ).*(?= ##Z##)
-
Message d'erreur ("Le Nombre doit être supérieur à 0.")
À importer du texte entre (" et ") , Utilisez regexp:
(?<=\(").*(?="\))
-
'errorMessage' = 'Le Nombre doit être supérieur à 0.'
À importer après le signe = et entre ' et ' , Utilisez regexp:
(?<=\= ').*(?=')
-
errorMessage = « cela est À traduire »
À importer après le signe = et entre 'et' Utilisez regexp:
(?<=\= ").*(?=")
-
msgstr ("Le Nombre doit être supérieur à 0.")
À importer msgstr Strings dans fichiers BDC monolingues en utilisant un filtre TXT, Utilisez regexp:
(?<=msgstr ").*(?=")
-
# Note : Ceci est une note
À exclure les lignes commençant par # , Utilisez regexp:
(^[^#].*)
-
valeurs '126', 'DCeT', 'TE (fr)'
À importer uniquement le texte entre devis et avec (en), comme Texte (fr)' Utilisez regexp:
(?<=')[^']*\(fr\)(?=')
Exemple de structure JSON :
{ "list": { "id": "1", « valeur » : « TE 1 pour Traduction. » }, "text": { "id": "2", « valeur » : « TE 2 pour Traduction. » }, "menu": { "id": "3", « valeur » : « TE 3 pour Traduction. » },"array": ["blue","green"],"arrays": [{ "color": "blue", "title": "BLEU" }, { "color": "green", "title": "VERT" } ]}
-
pour importer chaque valeur quel que soit le niveau, Utilisez :
(^|.*/)value
-
pour importer une seule valeur d'une Liste, Utilisez :
Liste/valeur
-
pour importer 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 importer le contenu d'un tableau JSON suite à une certaine clé, Utilisez :
(^|.*/)tableau\[.*\]
-
À importer le contenu d'un tableau d'objets spécifique, Utilisez :
(^|.*/)tableaux\[.*\].*
Exemple de mouche YAML :
Titre : A texte : traduire A catégories : Titre : B texte : traduire B catégories : Titre : C text: traduire C catégories : contenu : Titre : D texte : traduire D
expreg pour importer :
-
only 'translate A' :
text
-
'traduire C' uniquement :
categories\[2\]/text
-
'traduire D' uniquement :
categories\[\d+\]/content[\1\]/text
-
tout le texte :
text|categories\[\d+\]/text|categories\[\d+\]/content[\d+\]/text
Okapi, Java et Unicode sont Utilisés pour Règles de segmentation des fichiers .SRX.
L'utilisation d'expreg dans les fichiers .SRX est complexe et une connaissance de base des expressions régulières Utilisées est recommandée avant de tenter À travail avec eux.
Les règles de nobreak (Abréviations etc.) et les règles de Break (Fin de phrase par un point, etc.) sont des fichiers .SRX.
Exemple |
Description |
---|---|
[\p{C}] |
Caractère de contrôle invisible. |
[\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 Abréviations |
\t |
Onglet |
\n |
nouveau |
\u2029 |
Séparateur de paragraphe |
\u200B |
Espace de largeur nulle |
\u3002 |
Full stop idéographique |
\ufe52 |
Petit arrêt complet |
\uff0e |
Fullwidth full stop |
\uff61 |
Halfwidth ideographic full stop |
\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 lourd de point d'exclamation de coeur |
\ufe57 |
Petit point d'exclamation |
\uff01 |
Point d'exclamation pleine largeur |
Vérification AQ |
source expreg |
Expreg cible |
---|---|---|
Nombre supplémentaire de cibles |
|
|
Balises Commande (non appariée) |
|
|
Balises Commande (non appariée) |
|
|
Balises Commande (non appariée) |
|
|
Balises Commande (paire) |
|
|
Balises Commande (paire) |
|
|
Espaces avant balises |
|
|
Espaces après balises |
|
|
Aucun espace avant balises |
|
|
Entre crochets Manquants |
|
|
Supports ronds Manquants |
|
|