Gambas France BETA


Pas de compte ? Incription

EXpression rationelle

1
AuteurMessages
LanoueC#1 Posté le 15/6/2010 à 12:51:00
Bonjour

Dans le menu création d'un nouveau projet à quoi sert la case à cocher expresions rationelles ?

Est ce à dire qu'il existe des fonctions mathématiques avancées?

LanoueC
spheris#2 Posté le 15/6/2010 à 17:07:00
Lanouec,
Cocher expression rationnelle revient à cocher le composant GB.pcre, la bibliotheque d'expression rationnelle compatible aver PERL.
;)
GarulfoUnix#3 Posté le 24/8/2010 à 13:53:00
By the way
Bonjour

Dans le menu création d'un nouveau projet à quoi sert la case à cocher expresions rationelles ?

Est ce à dire qu'il existe des fonctions mathématiques avancées?

LanoueC


Les expressions régulières servent principalement à extraire des informations à partir d'une chaine de caractères.
Selon un motif, tu récupères ce que tu as demandé.

Par exemple avec l'instruction LIKE de Gambas

1
PRINT "Gambas" LIKE "G*"

qui renvoie TRUE

indique un motif (ici "G*") qui signifie pour toute chaines commenant par un G majuscule.

1
PRINT "Genial" LIKE "G*"

ça renvoie également TRUE.

C'est très utile par exemple pour les recherches de fichiers, les extractions de données dans la manipulation de fichiers de texte ect.
Prokopy#4 Posté le 24/8/2010 à 14:38:00
Kinder PinguiNon les expressions rationnelles c'est pas ça, LIKE est utilisable nativement (c'est un mot-clé du langage). Come l'a dit spheris c'est équivalent à cocher gb.pcre, PCRE étant le composant de gestion des Regex, très puissant pour filtrer ses chaînes de caractères (LIKE fait léger à côté).
De plus il ne fait pas que relever si la chaîne ressemble au motif, il te ressort aussi la position exacte, les bout de chaines qui sont dans les parenthèses capturantes, il gère l'UTF-8, et encore d'autres joyeusetés. Il m'a d'ailleurs été très utile dans mon tuto sur la coloration syntaxique. :)

Petite galerie pour le fun :
([a-zA-Z]+)=
^0[1-68]([-. ]?[0-9]{2}){4}$
^[a-z0-9._-]+@[a-z0-9._-]{2,}\.[a-z]{2,4}$

Les Regex c'est bon, mangez-en. :tongue:
La théorie, c'est quand on sait tout et que rien ne fonctionne.
La pratique, c'est quand ça marche mais qu'on ne sait pas pourquoi.
Quand la théorie rejoint la pratique, rien ne fonctionne et on ne sait pas pourquoi.
GarulfoUnix#5 Posté le 24/8/2010 à 14:41:00
By the way
Non les expressions rationnelles c'est pas ça, LIKE est utilisable nativement (c'est un mot-clé du langage). Come l'a dit spheris c'est équivalent à cocher gb.pcre, PCRE étant le composant de gestion des Regex, très puissant pour filtrer ses chaînes de caractères (LIKE fait léger à côté).
De plus il ne fait pas que relever si la chaîne ressemble au motif, il te ressort aussi la position exacte, les bout de chaines qui sont dans les parenthèses capturantes, il gère l'UTF-8, et encore d'autres joyeusetés. Il m'a d'ailleurs été très utile dans mon tuto sur la coloration syntaxique. :)

Petite galerie pour le fun :
([a-zA-Z]+)=
^0[1-68]([-. ]?[0-9]{2}){4}$
^[a-z0-9._-]+@[a-z0-9._-]{2,}\.[a-z]{2,4}$

Les Regex c'est bon, mangez-en. :tongue:


Prokopy, c'était juste à titre de compréhension pour LanoueC.
Prokopy#6 Posté le 24/8/2010 à 14:53:00
Kinder PinguiPardon je me suis un peu emballé. :lol:
Ce que je voulais dire c'était que gb.pcre et Like, même s'ils se ressemblent, n'on rien à voir entre eux. ;)
La théorie, c'est quand on sait tout et que rien ne fonctionne.
La pratique, c'est quand ça marche mais qu'on ne sait pas pourquoi.
Quand la théorie rejoint la pratique, rien ne fonctionne et on ne sait pas pourquoi.
GarulfoUnix#7 Posté le 24/8/2010 à 16:02:00
By the way
Pardon je me suis un peu emballé. :lol:
Ce que je voulais dire c'était que gb.pcre et Like, même s'ils se ressemblent, n'on rien à voir entre eux. ;)


Je n'ai rien contre ton post bien au contraire je trouve qu'il complémente justement la différence avec LIKE et gb.pcre :) .
1