Processeur Extraire du Texte

Ce processeur permet d'extraire une partie d'un texte, d'un nombre ou d'une combinaison des deux dans une nouvelle colonne. Il est identique au processeur Remplacer via Expression Régulière, mais au lieu de remplacer le contenu dans la même colonne d'origine, une colonne est créée avec le texte extrait. L'idée consiste en fait à placer la partie à extraire entre parenthèses. Cette partie sera ensuite extraite dans une nouvelle colonne.

Configurer le processeur

Pour définir les paramètres du processeur Extraire du Texte, suivez les indications du tableau ci-dessous.

Label Description

Obligatoire

Champ

Champ contenant les valeurs à extraire

oui

Expression régulière

Expression régulière permettant de déterminer la partie des valeurs qui sera extraite. Consultez http://en.wikipedia.org/wiki/Regular_expression pour plus d'informations sur l'utilisation des expressions régulières. Vous pouvez également tester les expressions régulières avec un débogueur en ligne comme Regex101.

oui

Exemple

En utilisant le même exemple que le processeur Remplacer via Expression Régulière (à partir d'un code postal français tel que 44100, gardez uniquement le code de département 44), le processeur Extraire du Texte peut être utilisé pour créer une colonne avec le code du département sélectionné au lieu de remplacer le contenu comme avec le processeur Remplacer via Expression Régulière.

Replace Regexp

Dans cet exemple, nous utilisons la chaine (?P<area>[0-9]{2})[0-9]{3}. [0-9] signifie n'importe quel numéro et {2} ou {3} signifient le nombre de numéro recherchés. Dans ce cas, nous voulons extraire les deux premiers numéros, nous utilisons donc les parenthèses; après les parenthèses, nous plaçons le reste de la chaîne que nous ne voulons pas écrire, ici les 3 numéros restants. L'expression spéciale ?P<area> permet de spécifier le nom de la nouvelle colonne.

D'un point de vue technique, ce processeur peut être utilisé pour extraire un certain motif exprimé sous forme d'expression régulière depuis une chaîne de caractères en utilisant la correspondance.

La syntaxe de l'expression d'extraction est la suivante: (?P<NOM>REGEXP). Où :

  • NOM est le nom d’un nouveau champ qui recevra le résultat de l’extraction. Ce nom ne peut contenir que des lettres, des chiffres et des underscore (_). Les caractères spéciaux tels que les lettres accentuées ou les virgules ne sont pas autorisés.

  • REGEXP est l'expression servant à l'extraction.

Par exemple, supposons que vous voudriez extraire le nom de rue depuis une adresse. C'est à dire, pour l'adresse

600 Pennsylvania Ave NW, Washington, DC 20500, États-Unis

vous voudriez extraire la valeur Pennsylvania Ave NW dans un champ street_name.

Vous devriez écrire l'expression suivante :

[0-9]+ (?P<street_name>.*), .*, .*, .*

Et si vous souhaitiez extraire le numéro depuis un champ street_number, il suffirait d'étendre l'expression précédente :

(?P<street_number>[0-9]+) (?P<street_name>.*), .*, .*, .*