regex dans un array

rimie1
Invité n'ayant pas de compte PHPfrance

23 mai 2011, 23:11

Bonjour!

Est ce qu'on peut utiliser une regex dans un array, par exemple:
$reg = '[az-AZ];
$tab = array('valeur1', 'valeur2', 'valeur3', 'valeur4', $reg);
et je dois verifier si un tableau contient la valeur1, valeur2,.. ou tout autre mot composant de lettres.

merci

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

23 mai 2011, 23:27

salut,

peux tu définir plus clairement ce que tu veux faire ?

connais tu la fonction in_array ?

suivant ton besoin tu peux utiliser d'autre fonction prévue pour les tableaux Les tableaux en php

@+
Il en faut peu pour être heureux ......

rimie1
Invité n'ayant pas de compte PHPfrance

23 mai 2011, 23:48

salut,

peux tu définir plus clairement ce que tu veux faire ?

connais tu la fonction in_array ?

suivant ton besoin tu peux utiliser d'autre fonction prévue pour les tableaux Les tableaux en php

@+
je voudrais voir si un element selectionne existe dans un tableau, c'est donc in_array, alors mon exemple:
$reg = '^r'; // un exemple
$tab = array('valeur1', 'valeur2', 'valeur3', 'valeur4', $reg);
le tableau peut comporter soit valeur1, valeur2, valeur3, valeur4 ou bien ma regex que je definit, par exemple ma regex: un mot qui commence par "r".
function check_name($value)
{
if(in_array($value, $tab))
{
echo 'le mot '.$value.' existe';
}
else
{
echo 'le mot '.$value.' est absent';
}
} // function

echo $check_name('valeur2'); // ca va afficher: le mot valeur2 existe
echo $check_name('xyz'); // ca va afficher: le mot xyz est absent
echo $check_name('rimie'); // ca va afficher: le mot rimie existe

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

24 mai 2011, 01:09

si tu cherche une valeur fiwe in_array peux le faire, par contre le tableaux la j'ai des doutes.

après pour une expréssion régulière va falloir passer par les fonctions preg_match ! (quitte a boucler sur le tableau pour tester toutes les lignes.

@+
Il en faut peu pour être heureux ......

rimie1
Invité n'ayant pas de compte PHPfrance

24 mai 2011, 10:03

si tu cherche une valeur fiwe in_array peux le faire, par contre le tableaux la j'ai des doutes.

après pour une expréssion régulière va falloir passer par les fonctions preg_match ! (quitte a boucler sur le tableau pour tester toutes les lignes.

@+
donc en 2 etapes:
function check_name($value)
{
if(in_array($value, $tab))
{
//echo 'le mot '.$value.' existe';
return TRUE;
}
else
{
//echo 'le mot '.$value.' est absent';
return FAlSE;
}

if(preg_match(param1, param2))
{
return TRUE;
}
} // function

if(check_name)
{
echo 'le mot '.$value.' est valide';
}
echo $check_name('valeur2'); // ca va afficher: le mot valeur2 existe
echo $check_name('xyz'); // ca va afficher: le mot xyz est absent
echo $check_name('rimie'); // ca va afficher: le mot rimie existe
 

rimie1
Invité n'ayant pas de compte PHPfrance

24 mai 2011, 12:49

merci, c'est resolu