Bonjour.
J'ai eu l'idée d'une amélioration des expressions régulières utilisées en programmation, et je cherche si elle existait déjà.
Nulle intention de remettre en question les expressions régulières, qui se sont instaurées en tant que standard, mais sont complexes, encore plus pour le débutant et surtout source d'erreurs du fait de leur faible lisibilité dans le cadre d'un travail en équipe.
Mon idée :
Décrire ce que l'on souhaite "matcher" dans un langage intelligible humain dans un langage dédié et conçu pour cela.
Ensuite, un logiciel prend la demande en entrée, et génère en sortie l'expression régulière, logiciel qui pourra être agrémenté d'option pour définir des constantes selon tel ou tel langage.
Vous me direz que cela n'a pas d'intérêt maintenant avec l'IA, car on exprime son besoin à l'IA, l'IA génère, ou prend une expression régulière existante et la modifie selon vos désirs, même plus besoin d'apprendre la syntaxe des expressions régulières.
Mais malgré tout, la syntaxe de l'expression régulière demeure peu lisible, un peu comme du code assembleur comparé à du langage impératif, où bien qu'en commentant beaucoup on puisse faire une erreur. Il y a les tests unitaires pour parer à ces mégardes me direz-vous.
Néanmoins, je reste déterminé sur l'intérêt de cette idée, qui est tout à fait intégrable en tant que code source dédié, automatisable dans un makefile ou autre, afin d'avoir une définition intelligible de ce qui est matché, et le respect du standard des expressions régulières en sortie.
Alors, avant de me lancer dans le développement, j'ai cherché si cela existait déjà. Oui.
Il y a "Human2Regex" https://human2regex.com/tutorial.html qui correspond le mieux à cette idée. Seul regret : le langage dans lequel il est concu, écrit en C/C++ aurait assuré une meilleure portabilité.
Il existe d'autres projets, mais beaucoup moins "human" : https://github.com/crdoconnor/simex et https://dottxt-ai.github.io/outlines...ity/regex_dsl/
En espérant que ce partage vous sera utile.




Répondre avec citation




Partager