T
Tu
ut
to
or
ri
ie
el
l
4
4
M
Mé
ét
ta
a-
-e
ex
xp
pr
re
es
ss
si
io
on
n
r
ré
ég
gu
ul
li
iè
èr
re
e
1
1.
.
I
IN
NT
TR
RO
OD
DU
UC
CT
TI
IO
ON
N
Dans le tutoriel 3 vous avez appris à formuler des requêtes simples. Il
s’agissait de méta-expression régulière atomique (MERA). Ces expressions
permettaient de décrire des ensembles de mots. Dans ce tutoriel, vous apprendrez à
formuler des requêtes plus complexes qui permettront de décrire des ensembles de
suite de mots.
2
2.
.
R
RE
EQ
QU
UE
ET
TE
E
S
SU
UR
R
D
DE
ES
S
M
MO
OT
TS
S
I
IS
SO
OL
LE
ES
S
:
:
M
ME
ET
TA
A-
-E
EX
XP
PR
RE
ES
SS
SI
IO
ON
N
R
RE
EG
GU
UL
LI
IE
ER
RE
E
A
AT
TO
OM
MI
IQ
QU
UE
E
(
(R
RA
AP
PP
PE
EL
L)
)
Une méta-expression régulière atomique (MERA) est une formule logique, sur
les noms de propriétés, les chaînes de caractères et les expressions régulières.
Un mot est décrit par la MERA si l'expression logique associée est « vraie » pour
le mot en question.
Un exemple de MERA est : [lemme="entraîner" & ems~"^VIND"]. Cette MERA
décrit tous les mots dont l'étiquette « lemme » est « entraîner » et l'étiquette
« ems » commence par « VIND ». Il s'agit donc d'une recherche du verbe entraîner
conjugué à l'indicatif.
[] est une MERA spéciale décrivant n'importe quel mot. En fait [] est
équivalent à [true].
3
3.
.
R
RE
EP
PE
ET
TI
IT
TE
EU
UR
R
D
DE
E
M
ME
ER
RA
A
:
:
M
ME
ET
TA
A-
-E
EX
XP
PR
RE
ES
SS
SI
IO
ON
N
R
RE
EG
GU
UL
LI
IE
ER
RE
E
E
EL
LE
EM
ME
EN
NT
TA
AI
IR
RE
E
Il est possible d'adjoindre un répétiteur pour répéter la MERA un certain
nombre de fois. Un répétiteur est de la forme {x, y}, avec x
≤
y, où x est le nombre
minimum de fois où la MERA doit être répétée et y le nombre maximum de fois.
Il existe aussi des répétiteurs prédéfinis :
« * », pour dire un nombre quelconque de fois, est équivalent à {0,
LONG_MAX1} ;
« + » , pour dire au moins une fois, est équivalent à {1, LONG_MAX} ;
« ? » , pour dire zéro ou une fois, est équivalent à {0, 1}.
L'ensemble constitué par la MERA et son répétiteur associés sera appelé
meta-expression régulière élémentaire (MERE).
4
4.
.
R
RE
EQ
QU
UE
ET
TE
E
S
SU
UR
R
D
DE
ES
S
G
GR
RO
OU
UP
PE
ES
S
D
DE
E
M
MO
OT
TS
S
:
:
M
ME
ET
TA
A-
-E
EX
XP
PR
RE
ES
SS
SI
IO
ON
N
R
RE
EG
GU
UL
LI
IE
ER
RE
E
Une méta-expression régulière (MER) peut être vue comme une expression
régulière sur les MERA. Il est donc possible de juxtaposer une ou plusieurs MERA
pour décrire des suites de mots mais il est aussi possible d'utiliser les
parenthèses « ( » et « ) », un opérateur de disjonction « | », un opérateur de
conjonction « & » ainsi que les répétiteurs2 décrits dans la section précédente
(section 3).
Par exemple, la MER identifiant les verbes conjugués suivis de verbe à
l'infinitif au sein d'une même phrase pourra s'écrire :
[ems~"^V" & ems!~"^VINF|^VPARP"] [ems!~"^V" & ems!~"^PCTFORTE"]* [ems~"^VINF"]
1 LONG_MAX est égal au plus grand entier de type long que la machine peut
représenter.
2 Les répétiteurs peuvent être utilisés sur une MERA comme décrit dans la
section 3, mais également sur une méta-expression régulière entre parenthèses !