Bonjour à tous,
Après des recherches sur votre forum et ailleurs, je reste bloqué devant un défi technique : je n'arrive pas à détecter un conflit entre deux expressions régulières. Illustration (schématique) :
Les expressions régulières ont la syntaxe de « filtres » de fichiers Windows.
Voici un nom de fichier : « ALIB.TXT »
Et trois expressions régulières, et le résultat qu'elles renvoient (Match) :
- Expression 1 : « A*B.TXT » = OUI
- Expression 2 : « AL*.TXT » = OUI
- Expression 3 : « B*.TXT » = NON
Conclusion :
- Les expressions 1 & 2 peuvent être en conflit
- Les expressions 1 & 3, et 2 & 3 ne peuvent jamais être en conflit (impossible)
La question à laquelle je ne trouve pas de réponse est... :
Comment faire pour détecter que les expressions 1 & 2 peuvent être en conflit ?
Je code en C#, et j'ai besoin de coder une méthode qui ressemblerait à
Est-ce que l'un d'entre vous aurait des pistes à me soumettre ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 bool IsConflitualRegex(string expr1, string expr2) { // Code difficile à écrire // return true ou false; }
Merci d'avance,
Picsonald.
Partager