Générateur de REGEX ?
Dernière réponse : dans Programmation
salut à tous IDN,
je voulais savoir si l'un d'entre vous connaissez un générateur de regex ?
Merci d'avance,
fclm
je voulais savoir si l'un d'entre vous connaissez un générateur de regex ?
Merci d'avance,
fclm
Autres pages sur : generateur regex
Lassé par la pub ? Créez un compte
mais tu peux pas faire ça. C'est pour ça qu'il existe des librairies de regex et non des générateurs.
http://regexlib.com/
Citation :
Le problème, c'est qu'il peut y en avoir des centaines de milliers des REGEXP valides pour un texte donnéhttp://regexlib.com/
Pourquoi vous dites que c'est impossible ?
Je penses faire un système comme ceci :
L'utilisateur saisie plusieurs exemples : texte source et le résultat qu'il attend , et en fonction de ça trouver la regex qui vérifie la condition...
Voila je vais essayer de me pencher dessus ... J'ai déja commencer à y réfléchire et je dois dire que c'est pas tellement évident , mais je suis persuadé que ça reste faisable ....
Je penses faire un système comme ceci :
L'utilisateur saisie plusieurs exemples : texte source et le résultat qu'il attend , et en fonction de ça trouver la regex qui vérifie la condition...
Voila je vais essayer de me pencher dessus ... J'ai déja commencer à y réfléchire et je dois dire que c'est pas tellement évident , mais je suis persuadé que ça reste faisable ....
Impossible parce que le langage [Sigma] à définir (une expression régulière est un langage, au sens mathématique), ainsi que son alphabet (toujours sens mathématiques) ne peuvent pas être définis à partir d'un simple échantillon de mots [Sigma*] (car ce n'est pas lui qui dénifit le langage).
[Sigma] est l'ensemble de tous les mots de ton langage. Ton échantillon de mots [Sigma*] est inclus dans [Sigma], mais inversement pas forcément. Donc, à partir de [Sigma*], tu ne peux pas définir [Sigma]. En clair, à partir de ton échantillon de mot, tu ne peux pas définir une expression régulière.
En pratique
- soit tu restreins trop le langage, ([Sigma généré] proche de [Sigma*]) donc il existe un mot X appartement à [Sigma] et qui n'appartient pas à [Sigma généré]
- soit tu ne restreins pas assez le langage, alors il existe un mot X appartenant à [Sigma généré] qui n'appartient pas à [Sigma]
- soit tu as beaucoup de chance (chance en réalité corrélée par un contexte).
Pour simplifier, lorsque tu vas faire ta recherche:
- soit tu restreins trop le langage, et tu oublies des mots valides dans ton expression
- soit tu ne te restreins pas assez, et tu valides des mots qui ne devraient pas l'être
- soit tu trouves un contexte particulier qui te permet d'avoir un peu chance (mais sans garantie mathématique que le résultat est correct, au contraire).
[Sigma] est l'ensemble de tous les mots de ton langage. Ton échantillon de mots [Sigma*] est inclus dans [Sigma], mais inversement pas forcément. Donc, à partir de [Sigma*], tu ne peux pas définir [Sigma]. En clair, à partir de ton échantillon de mot, tu ne peux pas définir une expression régulière.
En pratique
- soit tu restreins trop le langage, ([Sigma généré] proche de [Sigma*]) donc il existe un mot X appartement à [Sigma] et qui n'appartient pas à [Sigma généré]
- soit tu ne restreins pas assez le langage, alors il existe un mot X appartenant à [Sigma généré] qui n'appartient pas à [Sigma]
- soit tu as beaucoup de chance (chance en réalité corrélée par un contexte).
Pour simplifier, lorsque tu vas faire ta recherche:
- soit tu restreins trop le langage, et tu oublies des mots valides dans ton expression
- soit tu ne te restreins pas assez, et tu valides des mots qui ne devraient pas l'être
- soit tu trouves un contexte particulier qui te permet d'avoir un peu chance (mais sans garantie mathématique que le résultat est correct, au contraire).
Ahh ahh ca me fait rire
Un ordinateur c'est con ..
Et pour comprendre mieux ce à quoi tu veux t'attaquer, sans le jargon mathématique) considère l'exemple suivant :
Je souhaite capturer les salutations :
--> Bonjour !
--> Bonjour machin !
--> Salut.
--> Hi !!!!
Maintenant pour se mettre au niveau de l'ordinateur et sentir la difficulté,
remplace chaque caractère par son suivant dans l'alphabet (== alphabet ASCII)
T'obtiens des suites incompréhensibles de caractères ...
Comment veux tu deviner ou se trouve les zones ou des caractères (et lesquels ?) qui peuvent se trouver en quantité illimité ?
En gros voici un autre probleme tel que l'ordinaeur le reçoit (la flemme de faire ce que j'ai dit XD avec mon premier exemple) :
--> efe grgre ga !
--> gr ezm grr
--> gr za glprr
Amuses toi pour essayer de trouver du sens ... !
Petite remarque : A une autre echelle, si on considérait chaque mot comme une lettre on pourrait faire ce que tu veux pour les langues étrangère.. Ca serait chouette un programme qui peut deviner quel suite mots on a le droit de mettre entre deux mots
!
Sérieusement, allez lire la doc des regexp ...
C'est franchement pas la mort à comprendre.
Et la nature vous à doté d'un cerveau, utilisez le !
Bande de flemmard
pp (moi le premier)
Après je comprend que certaines regexps ou parties de regexp soient difficiles à trouver.
Exemple :
Trouver la regexp qui cherche le texte entre "<div " et "</div>" de façon non gourmande.
"Non gourmande" signifie qui va trouver deux résultats pour "<div>foo</div><div>bar</div>" et non pas un seul !
La partie qui cherche la première fermeture du </div> n'est pas triviale. Il faut donc faire attention.
Une source que j'ai écrite qui permet de générer ce morceau assez ennuyeux :
http://www.cppfrance.com/codes/GENERATION-EXPRESSION-RE...
(google generer regexp manger --> 1er lien)
PS : J'utilise un nom d'utilisateur accessible par tout le monde !!!
C'est c****-c****** d'avoir à s'enregistrer sur tous les sites de nos jours ...
Tout ça pour dire que ce n'est pas forcément "moi" qui répondrai
Un ordinateur c'est con ..
Et pour comprendre mieux ce à quoi tu veux t'attaquer, sans le jargon mathématique) considère l'exemple suivant :
Je souhaite capturer les salutations :
--> Bonjour !
--> Bonjour machin !
--> Salut.
--> Hi !!!!
Maintenant pour se mettre au niveau de l'ordinateur et sentir la difficulté,
remplace chaque caractère par son suivant dans l'alphabet (== alphabet ASCII)
T'obtiens des suites incompréhensibles de caractères ...
Comment veux tu deviner ou se trouve les zones ou des caractères (et lesquels ?) qui peuvent se trouver en quantité illimité ?
En gros voici un autre probleme tel que l'ordinaeur le reçoit (la flemme de faire ce que j'ai dit XD avec mon premier exemple) :
--> efe grgre ga !
--> gr ezm grr
--> gr za glprr
Amuses toi pour essayer de trouver du sens ... !
Petite remarque : A une autre echelle, si on considérait chaque mot comme une lettre on pourrait faire ce que tu veux pour les langues étrangère.. Ca serait chouette un programme qui peut deviner quel suite mots on a le droit de mettre entre deux mots
!Sérieusement, allez lire la doc des regexp ...
C'est franchement pas la mort à comprendre.
Et la nature vous à doté d'un cerveau, utilisez le !
Bande de flemmard
pp (moi le premier)Après je comprend que certaines regexps ou parties de regexp soient difficiles à trouver.
Exemple :
Trouver la regexp qui cherche le texte entre "<div " et "</div>" de façon non gourmande.
"Non gourmande" signifie qui va trouver deux résultats pour "<div>foo</div><div>bar</div>" et non pas un seul !
La partie qui cherche la première fermeture du </div> n'est pas triviale. Il faut donc faire attention.
Une source que j'ai écrite qui permet de générer ce morceau assez ennuyeux :
http://www.cppfrance.com/codes/GENERATION-EXPRESSION-RE...
(google generer regexp manger --> 1er lien)
PS : J'utilise un nom d'utilisateur accessible par tout le monde !!!
C'est c****-c****** d'avoir à s'enregistrer sur tous les sites de nos jours ...
Tout ça pour dire que ce n'est pas forcément "moi" qui répondrai
bonjour tout le monde
allor je post un message concernant les REGEX
jexplique mon probleme
jai trouve sur le net un logiciel pour extraire les adresse emails d'un ficher texte ( biensur avec la source )
ce logiciel et codé en C#
donc dans la source il y a une partie REGEX pour donné les ordre au logiciel pour extraire les adresse !
mais moi je veut que le logiciel me sorte pas les adresse emails mais certain code !
sous cette forme : M4312g56
- commence toujour par un M
- a toujour 8 caractaire en tous
- a toujour 6 chiffre et 1 lettre sans compté le M
- la lettre ici le g mais ki peut etre nimportekel lettre de lalphabet peut ce trouver nimporte ou dans le code APRE LE M
ex : M34g5434 , M678545g
donc je voudrais avoir lexpression reguliere pour l'introduire dans la source de mon logiciel a la place de lexpression pour extraire les adresse email
sa fait 1 semaine que je me casse la tete decu et je ne trouve pas si quelqun pourrai maider sa serai sympa
merci bocoup
a bientot mon msn : ***@hotmail.fr
cordialement
Modération : j'ai supprimé ton adresse mail
allor je post un message concernant les REGEX
jexplique mon probleme
jai trouve sur le net un logiciel pour extraire les adresse emails d'un ficher texte ( biensur avec la source )
ce logiciel et codé en C#
donc dans la source il y a une partie REGEX pour donné les ordre au logiciel pour extraire les adresse !
mais moi je veut que le logiciel me sorte pas les adresse emails mais certain code !
sous cette forme : M4312g56
- commence toujour par un M
- a toujour 8 caractaire en tous
- a toujour 6 chiffre et 1 lettre sans compté le M
- la lettre ici le g mais ki peut etre nimportekel lettre de lalphabet peut ce trouver nimporte ou dans le code APRE LE M
ex : M34g5434 , M678545g
donc je voudrais avoir lexpression reguliere pour l'introduire dans la source de mon logiciel a la place de lexpression pour extraire les adresse email
sa fait 1 semaine que je me casse la tete decu et je ne trouve pas si quelqun pourrai maider sa serai sympa
merci bocoup
a bientot mon msn : ***@hotmail.fr
cordialement
Modération : j'ai supprimé ton adresse mail
http://www.lafermeduweb.net/billet/javascript-regex-gen...
...euh -_-' si ça existe...c possible lol
...euh -_-' si ça existe...c possible lol
Lassé par la pub ? Créez un compte
- Contenus similaires :
- Forumpreg_match et regex ennuyeux
- Forum[regex] suppression d'une partie d'un texte avec une regex
- ForumRecherche a partir d'une variable dans MySql avec une regex
- ForumGenerateur code autoradio ford
- Forum[Aide] Script Générateur d'Actualité
- ForumProblème générateur d'écriture
- ForumCréer un générateur d'image pour site web
- ForumGenerateur 2 resistance en parallele lampe
- ForumAccess 07 generateur d'expression
- Voir plus