Expressions régulières

Définition des expressions régulières

Les expressions régulières constituent un moyen d'identification des chaînes de texte, telles que des caractères particuliers, des mots ou des spécificités de caractère. Dans Model Review, leurs utilisations principales sont liées au respect des conventions d'attribution de nom ou au tri d'annotations d'un modèle d'un projet pour rechercher des informations spécifiques.

Caractères spéciaux

Les expressions régulières emploient des caractères spéciaux pour une plus grande flexibilité de définition des correspondances. Les caractères spéciaux sont les suivants :

+ * ? . [ ] ^ ( ) | \

Les paragraphes suivants décrivent l'utilisation de chaque caractère spécial :

Point

Le point ( . ) correspond à un caractère quelconque.

Expression

Signification

Correspondances

Non-correspondances

390-.

Correspond à la chaîne "390-" suivie de n'importe quel caractère.

390-A, 390-1, 390--

390-A1, 1390-1

Revision . Relâché

Correspond à la chaîne "REVISION" suivie de n'importe quel caractère, puis de la chaîne "Released".

Revision A Released

Revision 1 Released

Revision # Released

Revision A1 Released

RevisionAReleased

Crochets

Les crochets ("[ ]") définissent une classe de caractères, qui correspond à tout caractère unique en fonction des caractères contenus dans les crochets. Tous les caractères spéciaux placés entre crochets perdent leur signification, à l'exception de "^" qui, s'il est le premier caractère placé dans les crochets, signifie "Ne correspond PAS" aux caractères spécifiés suivants.

Les crochets peuvent également contenir des intervalles de caractères.

Expression

Signification

Correspondances

Non-correspondances

[akm]

Un caractère : a, k ou m.

A, K, M

Akm, ak, G

[a-z]

N'importe quelle lettre.

A, b, c, d

1, 2, -, #

[^akm]

N'importe quel caractère, EXCEPTE a, k ou m.

C, f, G,

Am (considéré comme une succession de deux caractères)

A, k, m

[0-9]

N'importe quel chiffre.

0, 4, 7

A, #, z

[a-z][a-z]

Toute succession de deux lettres.

AB, BC, DE

A (une seule lettre)

A1

12

Astérisque

L'astérisque ( * ) suit une expression indiquant qu'elle peut se produire zéro, une ou plusieurs fois.

Expression

Signification

Correspondances

Non-correspondances

Ab*c

"A" suivi d'aucun, d'un ou de plusieurs "b", avec un "c" à la fin.

Ac

Abc

Abbbbbbbc

Bbb

Abcd

[a-z]*

Série illimitée de lettres quelconques (ce qui revient à dire uniquement des lettres, mais en incluant la possibilité de zéro lettre).

A

Bob

AAAAA

Steel

<vide> (car * peut indiquer aucune occurrence)

STEEL230

12

AA-##

Signe plus

Le signe plus ( + ) suit une expression indiquant qu'elle peut se produire une ou plusieurs fois.

Expression

Signification

Correspondances

Non-correspondances

Ab+c

"A" suivi d'un ou de plusieurs "b", avec un "c" à la fin.

Abc

Abbbbbbbc

Ac

Bbb

Abcd

[a-z]+

Tout nombre de toute lettre (revient à dire uniquement des lettres).

Bob

AAAAA

Steel

STEEL230

12

AA-##

<vide>

Point d'interrogation

Le point d'interrogation ( ? ) suit une expression pour indiquer qu'elle est facultative.

Expression

Signification

Correspondances

Non-correspondances

Ab?c

"A" suivi d'un "b" facultatif, avec un "c" à la fin.

Ac

Abc

Abbc

Abcd

390-[a-z][a-z]?

"390-" suivi par une lettre et une deuxième lettre facultative.

390-A

390-AB

390-11

390-

390-ABC

Tuyau

La barre verticale ( | ) représente la conjonction OU entre deux expressions (généralement mises entre parenthèses).

Expression

Signification

Correspondances

Non-correspondances

(390|241)-[a-z]+

"390" ou "241" suivi par "-" et une ou plusieurs lettres.

390-A

241-A

241-AB

200-A

241

241-

As per (MS2377|CS123)

"As per" suivi par "MS2377" ou "CS123".

As per MS2377

As per CS123

As per

As per MS3222

 

390-([abc]|[123])

"390" suivi par "a", "b" ou "c" OU par "1", "2" ou "3".

390-A

390-3

390-F

390-

Barre oblique inverse

Si la recherche porte sur un caractère spécial, il faut le faire précéder d'une barre oblique inverse pour indiquer à Model Review de lire ce caractère littéralement (et non en tant que caractère spécial).

Expression

Signification

Correspondances

Non-correspondances

[0-9]\+

Un chiffre suivi d'un "+".

1+

2+

1

A

1+1

What\?

"What" suivi d'un point d'interrogation.

What?

What's Up?

Commence par / Finit par

Il est courant dans Model Review de commencer ou de finir par une valeur particulière. Cette syntaxe diffère pour les personnes habituées à rechercher des expressions régulières de style. L'approche recommandée est d'utiliser ".*" ou ".+" devant ou derrière une expression pour indiquer "Commence par" ou "Finit par".

Expression

Signification

Correspondances

Non-correspondances

390-.*

Commence par "390-" (et finit par un caractère quelconque ou aucun caractère).

390-1

390-111

1390-1

390-.+

Commence par "390-" (et finit par tout caractère, mais doit comprendre au moins un caractère).

390-1

390-111

1390-1

390-

.*-[a-z]

Finit par un tiret ( - ) et une lettre (et commence par un caractère quelconque ou aucun caractère).

Revision-A

Rev-A

-A

Revision-A1

Rev-1

123

-1

.+-[a-z]

Finit par "-" et une lettre (et commence par tout caractère, mais doit comprendre au moins un caractère).

Revision-A

Rev-A

Revision-A1

Rev-1

123

-1

-A

Utilisation simultanée

Les expressions constituent un outil puissant, mais quelque peu complexe, pour la correspondance de texte. Pour faire face à des besoins plus compliqués, vous devrez peut-être devenir à l'aise dans la construction d'expressions complexes.

Voici quelques exemples d'expressions complexes :

Expression

Signification

Correspondances

Non-correspondances

[0-9]+[-]?[0-9]+

Chiffres séparés par un tiret facultatif.

123-45

12345

12A32

1232-A

A

.*[^_]

Ne peut pas finir par un tiret de soulignement (_).

123324

PART1

12343_

(390|231)-[a-z0-9]+-[0-9]+

"390" ou "231", suivi de "-", d'une section alphanumérique d'au moins un caractère, d'un autre tiret "-", puis d'au moins un chiffre.

390-mypart-1

231-bracket-99

120-mypart-1

380- -