Bonjour,

Je réalise une regex pour un petit framework db.
Pour écrire la condition where j'ai écrit ceci en regex:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
(?<table_name>\w+:)?(?<column_name>\w+)(?<operator><?>?=?%?)
Le groupe operator laisse donc un choix parmi
Le hic, c'est que j'aimerais bien indiqué une obligation de présence de cet opérateur.

J'ai fait une liste de test:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
a<>
a%
a<
a>
a<=
a>=
a=
a==
a%=
a=<
a
Le dernier ne comporte pas d'opérateur et match quant même.

Donc, comment faire pour rendre la présence d'au moins un élément du groupe operator obligatoire et aussi interdire des choses comme <>= qui sont aussi valides.