Recuperer la partie numerique d'une String sous PHP?

Recuperer la partie numerique d'une String sous PHP? - PHP - Programmation

Marsh Posté le 10-03-2005 à 17:43:19    

Salut,
Comment faire pour recuperer la partie numerique d une chaine sous PHP, un extract avec Pattern Matching koi ;)?
 
Exemple: 21 Bd Batignolles
recuperer--> 21
 
1521 rue Ploucar
recuperer --->1521
Merci

Reply

Marsh Posté le 10-03-2005 à 17:43:19   

Reply

Marsh Posté le 10-03-2005 à 17:45:31    

avec les regex...


---------------
Nos estans firs di nosse pitite patreye...
Reply

Marsh Posté le 10-03-2005 à 17:46:49    

oui je sais mais quelle fonction :d

Reply

Marsh Posté le 10-03-2005 à 17:48:17    

$chaine_propre = eregi_replace("[^0-9]","",$ta_chaine_a_nettoyer);
 
je crois.


---------------
http://www.hardware404.com L'actualité hardware francophone en continu
Reply

Marsh Posté le 10-03-2005 à 17:55:25    

merci pbl mois j ai utiliser les Tokens comme en Java ;)
$_POST['adresse1']=strtok($_POST['adresse2']," " );

Reply

Marsh Posté le 10-03-2005 à 18:33:07    

vous vous compliquez bien la vie :  
$tonadresse= '521 rue Ploucar';
$tonnumero = intval($tonadresse);
en convertissant ainsi une chaine commencant par des chiffres,on recupere uniquement ces derniers

Reply

Marsh Posté le 10-03-2005 à 18:34:32    


 
et pour le 521 bis ?


---------------
Moi, j'aime pas les signatures - J'écoute actuellement :
Reply

Marsh Posté le 10-03-2005 à 18:37:05    

coffeeman a écrit :

et pour le 521 bis ?


$tmp = explode(' ',$tonadresse);
$tonnumero = (strtolower($tmp[1]) == 'bis') ? $tmp[0].' '.$tmp[1] : $tmp[0];
 
 :ange:


Message édité par Profil supprimé le 10-03-2005 à 18:38:20
Reply

Marsh Posté le 10-03-2005 à 18:37:53    


 
et si c'est pas le bis ?
 


---------------
Moi, j'aime pas les signatures - J'écoute actuellement :
Reply

Marsh Posté le 10-03-2005 à 18:38:40    

coffeeman a écrit :

et si c'est pas le bis ?


g édité :D et te ferais remarqué qu'il veut recupérer uniquement la partie NUMERIQUE !!!!
dc mon intval() reste la meilleure solution


Message édité par Profil supprimé le 10-03-2005 à 18:39:58
Reply

Marsh Posté le 10-03-2005 à 18:38:40   

Reply

Marsh Posté le 10-03-2005 à 18:40:09    


 
et pour le ter ?
 
 
(enfin, c'est juste pour dire que l'éclatement d'une addresse, ça peut devenir complétement joyeux, et qu'un numéro dans une rue, c'est pas forcément un numéro).


---------------
Moi, j'aime pas les signatures - J'écoute actuellement :
Reply

Marsh Posté le 10-03-2005 à 18:53:37    

coffeeman a écrit :

et pour le ter ?


 
 [:wisetechi]

Reply

Marsh Posté le 17-05-2005 à 15:29:40    

salut,
nouveau probleme:
Je voudrais extraire d'une chaine uniquement la partie alphanumerique genre:
$str="Société l'elevage @.net # des freres & associes"
et le resultat voulu est:
$str=Societe lelevage net des freres associes
 
AU fait il faudrait remplacer tout ce qui n'est pas alphanumerique rien mais je ne sais pas faire la contraposer en pattern matching (regex) :(
J'ai essayé:
$nom=eregi_replace("[!0-9][!a-z]","",$nom);
mais rien :(

Reply

Marsh Posté le 17-05-2005 à 15:46:37    

ou plus simplement c quoi la syntaxe de tout ce qui est pas alphanumerique??
Sachant que [a-z] c'est pour les lettres
Sachant que [0-9] c'est pour les chiffres
et ???? pour ce qui ne correspond pas a ces 2 categorie

Reply

Marsh Posté le 17-05-2005 à 15:53:29    

euh... si le numero est toujours en début de string, tu fais simplement
$numero = $adresse + 0;

Reply

Marsh Posté le 17-05-2005 à 16:01:02    

non c un autre probleme la reponse est :
 
$nom=eregi_replace("[^a-zA-Z0-9]","",$nom);
 
:)

Reply

Marsh Posté le 17-05-2005 à 16:09:31    

PETOZAK a écrit :

non c un autre probleme la reponse est :
 
$nom=eregi_replace("[^a-zA-Z0-9]","",$nom);
 
:)


non, ca c'est moche et c'est lent. Si tu veux un alphanum, tu utilises preg au lieu de ergeg et tu regardes du côté de [[:alnum:]]

Reply

Marsh Posté le 20-05-2005 à 10:01:04    

de?

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed