probleme eregi

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : probleme eregi

par Cyrano » 11 août 2005, 09:42

ok bonne chance moi
c'est quoi le motif d'une chaine ?
C'est le modèle qui sert en quelque sorte de masque, on cherche le motif dans une chaine, c'est à dire on cherche ce qui correspond aux caractéristiques qu'on a inscrit dans l'expression régulière.

par HD » 11 août 2005, 07:30

finalement j'ai bricolé un truc tout seul :
$ligne = 0 ;
$titre = $regs[1] ;
$taille = strlen($titre);
$valeur = "";

while ( $ligne < $taille ) {
   switch ($titre[$ligne]) {
case is_numeric($titre[$ligne]):
   echo "numerique <br>";
   $valeur=$valeur.$titre[$ligne];
   echo "$valeur <br>";
   break;
case ".":
   echo "point <br>";
   $valeur=$valeur.$titre[$ligne];
   echo "$valeur <br>";
   break;
case "0":
   echo "zero <br>";
   $valeur=$valeur.$titre[$ligne];
   echo "$valeur <br>";
   break;
default :
   echo "autre <br>";
   break;
}
   $ligne=$ligne+1;
   };
et ca marche bien pour le moment

par HD » 11 août 2005, 00:53

ok bonne chance moi
c'est quoi le motif d'une chaine ?

par Cyrano » 10 août 2005, 23:16

Ouais, ok, là, j'essaye depuis un moment, mais je suis vraiment pas doué avec ça. En revanche, ce que j'essaye de faire, c'est dans un premier temps de trouver le motif dans la chaine, j'y arrive relativement bien, et ensuite de virer tout ce qu'on ne veut pas garder... et là, je patine un peu. Si tu as de la chance, Ripat va passer par là demain et tu auras une explication largement meilleure que la mienne sur la question.

par HD » 10 août 2005, 22:50

:oops: en fait
$regs[1]=azea   396.00 zaea  aeza
par exemple et je veux recuperer juste "396.00" sachant que ce qu'il y a avant et apres ces chiffres (et les chiffres eux memes) sont aleatoires et la longeur de la chaine est variable (d'où l'utilisation de eregi)[/quote]

par Cyrano » 10 août 2005, 22:37

Je ne comprends pas ce que tu veux récupérer au juste... explique par rapport à ton exemple ce que tu veux extraire :shock:

probleme eregi

par HD » 10 août 2005, 22:24

salut
j'ai une variable aleatoire exemple :
$regs[1]=396.00
quand je veux utiliser la fonction :
$titre2= eregi ("([0-9|.]{1,9})", $regs[1], $regs2);
ca ne me retourne que le nombre minimum de caracteres (ici 1seul - le 3) alors que je veux recuperer le maximum (jusqu'à 9 caracteres)
la seule fois où ca a marché c'est quand j'ai fixé la taille à 6 mais c'est pas ce que je veux car la taile de la chaine $regs[1] est variable

meme en utilisant les differentes options presentees ici : http://www.phpfrance.com/tutoriaux/inde ... regulieres ca ne marche pas :(
merci