Votre question

Générateur de REGEX ?

Tags :
  • Programmation
Dernière réponse : dans Programmation
14 Août 2007 17:21:36

salut à tous IDN,
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

a c 232 L Programmation
15 Août 2007 00:15:04

Un générateur de REGEX ?
Est-ce que tu pourrais développer un peu ? Dans quel but ? Il doit pouvoir faire quoi ?
15 Août 2007 13:43:17

en gros tu rentres dans un champ le "texte" que tu veux recuperer, et ensuite le generateur de genere une REGEX valide pour pouvoir recuperer le "texte" donné ...
J'ai pas envie de réinventer la roue donc si ca existe je veux bien, sinon je suis partis pour develloper .....
Contenus similaires
15 Août 2007 14:28:59

C'est pas mal comme idée, mais ce sera pas optimiser...

A moin de faire un truc plus complexe que de le faire soit même ^^
a c 232 L Programmation
15 Août 2007 17:31:48

Le problème, c'est qu'il peut y en avoir des centaines de milliers des REGEXP valides pour un texte donné.

Exemple, je donne le mot "bonjour".
Je pourrais avoir comme REGEXP :
(.*)+
bon(.*)+
(.*)+jour

etc...
15 Août 2007 18:54:18

je vais essayer de develloper le generateur ....
Un mec pas super fort en REGEX qui fait un generateur de REGEX ....
15 Août 2007 19:14:23

mais tu peux pas faire ça.
Citation :
Le problème, c'est qu'il peut y en avoir des centaines de milliers des REGEXP valides pour un texte donné
C'est pour ça qu'il existe des librairies de regex et non des générateurs.

http://regexlib.com/
15 Août 2007 19:47:02

le probleme les librairies de regex quand c'est pour des trucs "habituel" ca gere mais sinon si c'est un truc super spécifique c'est mort ...
15 Août 2007 20:01:21

Hum ca peut etre intéressant ça tient ^^ je vais essayer d'en fairre un aussi !!!!
16 Août 2007 10:59:29

Vous fumez du crack les gas. Le jour où vous avez fait un générateur de regex que je sais pas comment tu va générer à partir de rien ben je t'appelle PATRON.

Bonne chance, car t'en a bien besoin.
16 Août 2007 18:45:47

ça à autant de sens que de dire, comment faire un générateur de mots
->soit ça génère des trucs aléatoires donc peu d'intérêts (sauf pour des mots de passe)
->soit ça s'appuie sur un dictionnaire, donc ça ne gère que des cas prédéfinis, dans ce cas on appelle ça une librairie
16 Août 2007 19:23:22

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 ....
a b L Programmation
16 Août 2007 19:59:17

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).

17 Août 2007 12:32:28

En bref, oublie ton générateur de regex que s'il était faisable il serait déjà fait...

Y'a pleins d'autres trucs à programmer en plus, comme un générateur de méga insultes super longue à partir d'un dictionnaire (ce n'est qu'un exemple...)
18 Août 2007 00:38:26

MoOx_t a dit :

Y'a pleins d'autres trucs à programmer en plus, comme un générateur de méga insultes super longue à partir d'un dictionnaire (ce n'est qu'un exemple...)


Tu te crois drole ? :sleep: 

PS : j'ai laché l'affaire du générateur de regex ^^
18 Août 2007 10:51:13

y'a un autre truc qu'un generateur, en gros tu demandes la chaine a "regexer", et tu poses plein de questions, et ensuite tu peux construire la REGEX, c'est plus trop un générateur mais un aide-REGEX ....
Ceux que ca tente ^^
18 Août 2007 11:39:49

Ouai c'est un peu sur quoi j'étais parti , mais c grave long et j'ai pas trop le temps pr ce genre de gadget ^^
18 Août 2007 12:11:55

c'est vrai que c'est super long, mais apres ca facilite la vie de tout le monde ^^
a b L Programmation
18 Août 2007 12:55:46

ça ne facilite pas tout le monde parce que ce n'est plus générique, c'est uniquement dépendant de ton contexte.
22 Décembre 2007 21:38:08

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 :D  !

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 :p 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 :) 
5 Juillet 2008 15:52:03

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
a c 232 L Programmation
5 Juillet 2008 21:11:17

M([0-9][0-9][0-9][0-9][0-9][0-9][a-z]|[0-9][0-9][0-9][0-9][0-9][a-z][0-9]|[0-9][0-9][0-9][0-9][a-z][0-9][0-9]|[0-9][0-9][0-9][a-z][0-9][0-9][0-9]|[0-9][0-9][a-z][0-9][0-9][0-9][0-9]|[0-9][a-z][0-9][0-9][0-9][0-9][0-9]|[a-z][0-9][0-9][0-9][0-9][0-9][0-9])
7 Juillet 2008 13:05:17

merci omar ca marche nikel

peut tu me donner lexpression pour extraire ces codes la maintenant

32gf2343

-toujour 8 caractaire
-6 chifre ( il peuvent etre nimporte ou dans le code
- toujour 2 letre ki peut etre aussi nimporte ou dans le code


voila merci de me repondre omar
a b L Programmation
7 Juillet 2008 20:17:49

A ta place, je validerais plusieurs expressions régulières (une par point en fait).
Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS