Recherche et remplacement complexe

Recherche avec les caractères génériques :

Dans ce type de recherche, on essaie de décrire des motifs de recherche ainsi que leur nombre de répétitions.
Par exemple, rechercher une marque de paragraphe se répétant plusieurs fois et la remplacer par une seule occurence.
Dans ce mode, les caractères spéciaux utilisés pour les marques de paragraphes (ainsi que pour d’autres caractères) sont différents de ceux utilisés dans la recherche standard.
 
Table 3 : Liste de motifs 
MotifCorrespond àCommentaire
?n'importe quel caractère
*0 ou plusieurs caractères
Plage de valeurs

[xyZ]un seul caractère qui est soit x, soit y, soit Z
[a-z]un seul caractère compris entre a et zLe tiret permet d'indiquer une plage
[A-Z]un seul caractère compris entre A et Z
[a-z,A-Z]un seul caractère compris entre a et z ou entre A et ZLa virgule sépare les plages
[0-9]un seul caractère compris entre 0 et 9
[α-ώ]un caractère grec α β γ δ εà vérifier
[Ё-ґ]un caractère cyrillique В,ы,м,о,ж,е,т,е,п,о,м,ч,ь,нà vérifier
Négation dans plage de valeurs
[!xyZ]un seul caractère qui n'est ni x, ni y, ni ZLe point d’exclamation indique la négation
[!0-9]un caractère qui n’est pas un chiffre

 

Répétitions

MotifSIgnification
{n}exactement n occurences du caractère ou expression précédente
{n,}Au moins n occurrences du caractère ou de l’expression précédente
{m,n}De m à n n occurrences du caractère ou de l’expression précédente
@Une ou plusieurs occurrences du caractère ou del’expression qui précède

Délimitateur de motifs 

Il est parfois nécessaire d’attribuer une sorte de numéro pour chacun des motifs utilisés afin d’indiquer à Word comment utiliser les séquences de caractères trouvés dans la chaîne de remplacement.
Par exemple, supposons que l’on a le  tableau suivant
 
Prénom Nom Maths Français
Paul Lotin 12 5
Arthur Rimbaud 10 18
Paul Verlaine 11 7
 
et que l’on veuille permuter les colonnes Nom et Prénom ainsi que les colonnes Maths et français pour obtenir le tableau suivant (des tabulations séparent les colonnes)
 
Nom Prénom Français Maths
Paul Lotin 5 12
Rimbaud Arthur  10 18
Verlaine Paul 11 7
 
 
La séquence de formes recherchée est :
<saut de paragraphe><forme Prénom> <forme separateur blanc > <forme Nom> <forme séparateur blanc> <forme Note en Math> <forme séparateur blanc> <forme Note en Français>  <formeseparateur blanc posible> <forme saut de paragraphe>forme 
 
avec :
<saut de paragraphe> => ^13
<forme Nom> , <forme Prénom>, <forme Note en Math> , <forme Note en Français>  =>  <[! ]@>
<forme separateur blanc> =>   [ ]@
 
Pour séparer les formes ainsi que pour ré-utiliser les formes trouvées dans le remplacement, 
on utilise dans Word la parenthèse ouvrante et fermante.
La séquence de forme est alors :
(^13)(<[! ]@>)([ ]@)(<[! ]@>)([ ]@)(<[! ]@>)([ ]@)(<[! ]@>)
 
La 1ere forme est donc (^13) et peut être utilisée dans le remplacement par \1.
La 2eme forme est (<[! ]@>) et peut être utilisée dans le remplacement par \2.
 
On obtient le résultat voulu grâce à la formule suivante ( à mettre dans le champ de remplacement).
\1\4^t\2^t\8^t\6