Page 1 sur 1

cherche chaine de caractère

Posté : 24 août 2011, 01:22
par miiidooo19
Bonjour à tous le monde,

je cherche a voir dans un text si la chaine de caractère (Modifier Par) en php

comment faire?

Merci d'avance

Re: cherche chaine de caractère

Posté : 24 août 2011, 02:13
par miiidooo19
j'ai trouvé cette function 'ereg' ça marche mais malgré ça y a un msg d'erreur (Function ereg() is deprecated in...) et apres une recherche des information de cette function sur net j'ai trouvé qu'il ne marche plus depuis php 5 et qu'il vaut mieux de l'éviter

quelle function peux jouer le meme rôle de ereg() ?

Re: cherche chaine de caractère

Posté : 24 août 2011, 08:10
par moogli
salut,

ce n'est pas que la fonction ne "fonctionne" plus elle existe toujours pour la compatibilité ascendante du code :)

si tu regarde bien les notes de la fonction ereg tu y trouvera que preg_match est l'alternative conseillée par php.net ;)

@+

Re: cherche chaine de caractère

Posté : 24 août 2011, 09:04
par sirakawa

Re: cherche chaine de caractère

Posté : 24 août 2011, 18:42
par miiidooo19
salut,

ce n'est pas que la fonction ne "fonctionne" plus elle existe toujours pour la compatibilité ascendante du code :)

si tu regarde bien les notes de la fonction ereg tu y trouvera que preg_match est l'alternative conseillée par php.net ;)

@+
j'ai essayé preg_match mais ça marche pas :s

enfait quand je fait

if (ereg("Modifier par :",$resultposts->post))
echo 'oui';
else
echo 'non';

mais quand je fait

if (preg_match("Modifier par :",$resultposts->post))
echo 'oui';
else
echo 'non';

et le résultat de la première c'est oui mais avec le msg d'erreur que j'ai indiqué au début

et pour la 2eme résultat c'est non (alors que Modifier par : existe bien dans $resultposts->post ) et ce msg d'erreur
preg_match() [function.preg-match]: Delimiter must not be alphanumeric or backslash ....

Re: cherche chaine de caractère

Posté : 24 août 2011, 20:46
par Alf?>
Salut,

Voici un exemple d'utilisation en espérant que cela puisse t'aider.
$chaine = 'blabla Modifier par : toto le 12 zad/ezf/fzef.';
$trouve = preg_match_all('/modifier par :/i', $chaine, $tabTrouve);
//le petit 'i' signifie que tu rends la chaine de caractère recherché insensible à la casse.
//les '/' au début et à la fin délimitent la recherche PCRE.

if($tabTrouve[0][0] == "Modifier par :"){
  echo 'TROUVE !!';
}
else{
  echo 'Pas trouvé....';
}
Pour voir le contenu du tableau tape ça :
print_r($tabTrouve);
Bon... sans mentir c'est un peu à l'arrache mais c'est suffisant pour le moment.

;) Alf?> like you !!!

Re: cherche chaine de caractère

Posté : 24 août 2011, 20:58
par devlop78
Oui d'autant que s'il le trouve, il sera donc logiquement égal à ce qu'il a cherché ^^

Mais il pourrait être intéressant de récupérer le nom de la personne ;)

Re: cherche chaine de caractère

Posté : 24 août 2011, 21:03
par Alf?>
Bon okok :mrgreen:

Voilà qui est plus satisfaisant :
$chaine = 'blabla Modifier par : toto le 12 zad/ezf/fzef.';

//le petit 'i' signifie que tu rends la chaine de caractère recherché insensible à la casse.
//les '/' au début et à la fin délimitent la recherche PCRE.

if(preg_match('/modifier par :/i', $chaine)){
  echo 'TROUVE !!';
}
else{
  echo 'Pas trouvé....';
}
Bon là je ne place pas les éléments de ma recherche dans le nouveau tableau (cf:$tabTrouve) donc le print_r() ne sera pas utils.

=D> bravo Alf?> :lol:

Re: cherche chaine de caractère

Posté : 24 août 2011, 21:38
par miiidooo19
Bon okok :mrgreen:

Voilà qui est plus satisfaisant :
$chaine = 'blabla Modifier par : toto le 12 zad/ezf/fzef.';

//le petit 'i' signifie que tu rends la chaine de caractère recherché insensible à la casse.
//les '/' au début et à la fin délimitent la recherche PCRE.

if(preg_match('/modifier par :/i', $chaine)){
  echo 'TROUVE !!';
}
else{
  echo 'Pas trouvé....';
}
Bon là je ne place pas les éléments de ma recherche dans le nouveau tableau (cf:$tabTrouve) donc le print_r() ne sera pas utils.

=D> bravo Alf?> :lol:

Yeah good Alf?> ^^ merci