Recuperer la partie numerique d'une String sous PHP? - PHP - Programmation
Marsh Posté le 10-03-2005 à 17:45:31
avec les regex...
Marsh Posté le 10-03-2005 à 17:48:17
$chaine_propre = eregi_replace("[^0-9]","",$ta_chaine_a_nettoyer);
je crois.
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']," " );
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
Marsh Posté le 10-03-2005 à 18:34:32
et pour le 521 bis ?
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];
Marsh Posté le 10-03-2005 à 18:37:53
et si c'est pas le bis ?
Marsh Posté le 10-03-2005 à 18:38:40
coffeeman a écrit : et si c'est pas le bis ? |
g édité et te ferais remarqué qu'il veut recupérer uniquement la partie NUMERIQUE !!!!
dc mon intval() reste la meilleure solution
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).
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
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
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;
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);
Marsh Posté le 17-05-2005 à 16:09:31
PETOZAK a écrit : non c un autre probleme la reponse est : |
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:]]
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