Forme ereg, eregi, ereg_replace, eregi_replace

cs_apz Messages postés 281 Date d'inscription dimanche 7 avril 2002 Statut Membre Dernière intervention 11 avril 2013 - 4 avril 2003 à 22:06
cs_apz Messages postés 281 Date d'inscription dimanche 7 avril 2002 Statut Membre Dernière intervention 11 avril 2013 - 7 avril 2003 à 14:05
salut,

j'aimerais bien comprendre les expressions regulieres (ereg, ereg_replace, eregi, eregi_replace).

j'ai lu la documentation et voila ce que j'ai compris :

ereg et ergi cherche une expression dans un une chaine (eregi est sensible a la casse)
ereg_replace et eregi_replace cherche une expression dans une chaine est remplace cette derniere par une autre chaine (eregi_replace est sensible a la casse)

mais ce que je n'arrive pas a comprendre c'est le format de ces functions.

alors voila qu'est-ce que j'ai trouve comme exemples :

$chaine = eregi_replace( "([[:alnum:]]+)://([^[:space:]]*)([[:alnum:]#?/&=])",
"\\1://\\2\\3",
$chaine);

$chaine = eregi_replace( "(([a-z0-9_]|\\-|\\.)+@([^[:space:]]*)([[:alnum:]-]))",
"\\1",
$chaine);

est-ce quelqu'un pourra m'aider a comprendre ceci ?

Merci.

---------------------------------------------------------------------
Debutant PHP/SQL, Delphi
Club de correspondance :
http://www.elatlasclub.fr.st

3 réponses

cs_hicksman Messages postés 258 Date d'inscription mercredi 14 août 2002 Statut Membre Dernière intervention 23 avril 2004 1
5 avril 2003 à 00:24
ben c assez complexe en fait, le mieux c de faire plein d'essai. Je sais c bateua comme réponse et tu t'attends surement à mieux, je te conseille alors le bon tutoriel sur ce sujet a cette adresse :
http://www.phpcs.com/article.aspx?Val=385
il y en a deux autres a la suite de celui là je crois. Perso, ça m'a super bien aidé à comprendre. Surtout ence qui concerne ce genre de syntaxe:
"(([a-z0-9_]|\\-|\\.)+@([^[:space:]]*)([[:alnum:]-]))",
c vrai que c'est péchu.

Hicksman :clown)
0
cs_Tortuegeniale Messages postés 1123 Date d'inscription lundi 7 janvier 2002 Statut Membre Dernière intervention 26 juin 2008
5 avril 2003 à 15:00
Salut

je v te donner un petit exemple :

$masque = "^[a-zA-Z0-9]$";
if (ereg($masque,$machaine)
{
echo "c bon";
}
else
{
echo "c pas bon";
}

Traduction :

Dans $masque il y a tout ce que l'on veut trouver dans une chaine. ici je veux les lettres de A à Z en majuscule ou en minuscule et des chiffres de 0 à 9. Le ^ signifie que tu recherche a partir du début et le $ signifie que tu recherche jusqu'a la fin

Donc si tu test avec
$machaine = "phpcs"; // ça passe
$machaine = "PhPCs"; // ça passe
$machaine = "PhPCs14"; // ça passe
$machaine = ">> PHPCS c'est cool"; // ça passe pas parceque qu'il y a des espaces, des > et des '

Je ferai un tutorial pour cette semaine si je trouve le temps pour montrer comment tout ça marche (c clair que c vraiment dure des fois lol)

++

--> http://www.kame-house.org <--
La plus grosse base de données sur les dessins animés des années 80
Site gratuit et sans pub
0
cs_apz Messages postés 281 Date d'inscription dimanche 7 avril 2002 Statut Membre Dernière intervention 11 avril 2013
7 avril 2003 à 14:05
merci j'ai telecharger les trois tut sur ces expressions.

je vais lire tout ca et tachez de bien comprendre.

merci encore.
---------------------------------------------------------------------
Debutant PHP/SQL, Delphi
Club de correspondance :
http://www.elatlasclub.fr.st
0
Rejoignez-nous