pas compris ce code REGEXP

Consultez la formation à Google Analytics de WebRankInfo / Ranking Metrics

bigs32
WRInaute impliqué
WRInaute impliqué
 
Messages: 517
Inscription: 8 Mai 2006

pas compris ce code REGEXP

Message le Mer Fév 10, 2010 21:08

bonjour
j'aimerais bien comprendre cette syntaxe
Code: Tout sélectionner
REGEXP '[[:<:]]".$keyword."[[:>:]]'

avez vous une idée car je galère un peu
merci d'avance


tryan
WRInaute passionné
WRInaute passionné
 
Messages: 2355
Inscription: 20 Fév 2005

Re: pas compris ce code REGEXP

Message le Mer Fév 10, 2010 23:03

Salut,

Si je ne me plante pas de trop, cela permet de déterminer les limites d'un mot contrairement à LIKE.
Ainsi pour le mot "Boisé", le regex ira chercher le mot exacte alors que le LIKE ressortira "Boisé", "Bois", "Boi" ...

Bon, c'est à confirmer quand même ...

Exemple :
Code: Tout sélectionner
$requete = $_POST['requete'];
$query = mysql_query("SELECT * FROM SITE WHERE mot_clef REGEXP '[[:<:]]".$requete."[[:>:]]' ORDER BY id ASC") or die (mysql_error());

jcaron
WRInaute accro
WRInaute accro
 
Messages: 2686
Inscription: 13 Fév 2004

Re: pas compris ce code REGEXP

Message le Jeu Fév 11, 2010 0:58

C'est effectivement une extension mysql permettant de trouver les limites d'un mot, un peu comme \b en PCRE, mais avec une notion de début et de fin (alors que \b marque la transition dans n'importe quel sens). Ca matche donc "entre" un caractère qui ne fait pas partie d'un mot (\W en PCRE) et un caractère qui fait partie d'un mot (\w).

La notation [[:xxx:]] permet l'appel à une "classe de caractères" (xxx dans l'exemple), dont certaines sont abrégées dans des raccourcis, comme [[:digit:]] qui est équivalent à \d. [[:<:]] et [[:>:]] ne sont pas standard POSIX, mais sont documentés ici:
http://dev.mysql.com/doc/refman/5.1-maria/en/regexp.html (à la fin de la doc avant les commentaires).

Jacques.

bigs32
WRInaute impliqué
WRInaute impliqué
 
Messages: 517
Inscription: 8 Mai 2006

Re: pas compris ce code REGEXP

Message le Jeu Fév 11, 2010 21:48

merci à tous les deux.
voici la version francaise
http://dev.mysql.com/doc/refman/5.0/fr/regexp.html


Si vous avez aimé cette discussion, partagez-la sur vos réseaux sociaux préférés :

Formation recommandée sur ce thème :

Formation Google Analytics : en 2 jours, apprenez comment exploiter l'essentiel des possibilités de l'outil de mesure d'audience de Google. Formation animée par les experts Google Analytics de Ranking Metrics.

Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 2 invités