Donnez vie à vos documents numériques !
 

GREP pour InDesign : détecter un mot multiforme

Nous allons étudier les trois principales fonctions qui permettent à une requête GREP de capter un mot sous toutes ses formes. C’est-à-dire avec ou sans capitale, avec ou sans pluriel, et éventuellement avec plusieurs orthographes possibles.

Un mot caractéristique en français est le mot “clé”*, que l’on peut trouver sous plusieurs formes : Clé, clé, Clés, clés, Clef, clef, Clefs, clefs. Soit huit formes possibles pour un seul mot dans le plus “simple” des cas (on pourrait aussi avoir des variantes tout en capitales…).

Cet exemple n’est pas qu’un cas d’école, il est issu de la vraie vie, d’un vrai catalogue et d’une vraie problématique à résoudre pour un vrai client.

Bien entendu le but de ce tuto n’est pas simplement de pouvoir détecter le mot “clé”*, le but c’est de comprendre comment utiliser les différents moyens de détecter un mot sous toutes ses formes. Avec des caractères similaires ou successifs, des pluriels, etc.

 

Cet exemple de requête GREP est utilisable dans deux cas de figure :

– Rechercher-remplacer GREP : on veut remplacer toutes les différentes formes du mot par une seule pour l’unifier, c’est un cas fréquent en littérature, magazine, rapport, etc.

– Style GREP : on veut appliquer un formatage identique à toutes les formes du mot sans pour autant modifier son orthographe, c’est un cas fréquent dans les listes, les catalogues, etc. Un style GREP ne peut agir que sur l’aspect (pas de remplacement de caractère possible) mais il à l’avantage d’être dynamique, contrairement au Rechercher-remplacer. Quand on utilise les légendes, la fusion de données ou l’importation XML c’est indispensable.

 

Rechercher :

[Cc]l[[=e=]]f?s?

 

Explications :

 

[Cc] : on recherche “C” en capitale ou “c” en minuscule. On pourrait aussi utiliser (C|c), pour le coup ça revient au même. C’est l’idéal pour détecter un caractère OU un autre. Autrement, on pourrait désactiver le respect de la casse comme dans l’un des tutos précédents mais ce n’est pas le but ici.

l : on recherche un “l”.

[[=e=]] : ce posix s’appelle une équivalence de caractère. On recherche toutes les formes du “e” avec ou sans accent et quel que soit l’accent éventuel. C’est une sorte de joker très pratique en français quand on a affaire à des mots mal orthographiés contenants des voyelles accentuées : é, è, ê, à, â, ù, ô, î, ï… ou quand on a affaire à la consonne à cédille.

f? : on recherche un « f », le point d’interrogation situé immédiatement à sa droite rend sa présence facultative. C’est irremplaçable pour détecter un caractère présent de façon aléatoire.

s?

: on recherche un « s », le point d’interrogation situé immédiatement à sa droite rend sa présence facultative. C’est irremplaçable pour détecter les féminins (“e?”), les pluriels (“s?”) ou les féminins pluriels (“e?s?”).

 

On recherche donc un “c” en capitale ou en minuscule, suivi d’un “l”, suivi d’un “e” sous toutes ses formes, éventuellement suivi d’un “f”, éventuellement suivi d’un “s”.

 

À bientôt pour un autre abracadabraGREP.

abracadabraGREP rechercher-remplacer

abracadabraGREP style GREP

 

* Et non pas le “mot-clé”, comme quoi un simple trait d’union peut complètement changer le sens. 😉