Php regex tres simple, garder que les chiffre
Résolu
107ans
Messages postés
9
Date d'inscription
Statut
Membre
Dernière intervention
-
Duncan -
Duncan -
Bonjour,
je souhaite ne garder que les chiffres d'une variable et enlever le reste
car je commence tout juste le web
par exemple j'ai ceci
$variable = lalala12345;
et je veux juste les chiffres
$variable = 12345;
comment faire ?
nb : dans $variable il n'y a rien apres (ex : lalala12345lalala) mais juste avant (ex : lalala12345)
je souhaite ne garder que les chiffres d'une variable et enlever le reste
car je commence tout juste le web
par exemple j'ai ceci
$variable = lalala12345;
et je veux juste les chiffres
$variable = 12345;
comment faire ?
nb : dans $variable il n'y a rien apres (ex : lalala12345lalala) mais juste avant (ex : lalala12345)
A voir également:
- Php regex tres simple, garder que les chiffre
- Excel trier par ordre croissant chiffre - Guide
- Clavier iphone chiffre et lettre - Guide
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Iphone 14 simple - Guide
- Comment garder le 0 devant les chiffres sur excel - Guide
3 réponses
ccampi
Parfait ;)
Guitou
Top !
yop
génial !
grosratdegueu
la fonction ereg est depréciée
Duncan
la fonction ereg est depréciée et remplacer par la fonction preg_replace
Bonsoir,
Voici un code qui fonctionne, il existe peut être plus simple.
<?php
$message = "abc5897";
$carac = 0;
$taille = strlen($message);
if (preg_match("/[0-9]/i", $message)) { // On test si la chaine contient des chiffres
while ($carac <= $taille-1) { // tant qu'il y a des caractères
$Chaine = $message{$carac}; // on prend caractère par caractère
if((ord($Chaine) <= ord("9")) && (ord($Chaine) >= ord("0")) ){ // si le caractere est un chiffre
$chiffre .= $Chaine;
}
//$debut = $debut + 1;
//$fin = $fin + 1;
$carac++;
}
echo $chiffre;
}
?>
Bonne soirée.
Voici un code qui fonctionne, il existe peut être plus simple.
<?php
$message = "abc5897";
$carac = 0;
$taille = strlen($message);
if (preg_match("/[0-9]/i", $message)) { // On test si la chaine contient des chiffres
while ($carac <= $taille-1) { // tant qu'il y a des caractères
$Chaine = $message{$carac}; // on prend caractère par caractère
if((ord($Chaine) <= ord("9")) && (ord($Chaine) >= ord("0")) ){ // si le caractere est un chiffre
$chiffre .= $Chaine;
}
//$debut = $debut + 1;
//$fin = $fin + 1;
$carac++;
}
echo $chiffre;
}
?>
Bonne soirée.
Bonsoir,
je ne suis pas un pro de programmation ou de php ;)
Mais je peux juste te donner une idée de principe (Cependant il doit certainement y avoir plus optimal et plus simple) :
=============
La synthaxe du code est complètement fausse c'est juste pour l'idée
=============
// Ta variable de base
$variable = lalala12345;
// Une variable temporaire en dehors de la boucle (Je sais pas si il y a besoin)
$var;
// Une boucle qui te permettra de tester chaque caractère de
// ta chaine pour savoir si c'est numérique ou non.
for (i=0; i<(strlen($variable)-1);i++) {
// Permet de sélectionner quel caractère tu va tester avec le i de la boucle
$j=$i++;
// Chaque tour de boucle tu va tester le caractère suivant
$str=substr($variable, $i, $j );
// Si le caractère est de type entier
if (is_int($str)){
// Tu l'ajoutes aux autres
$var=$var+$str;
}
// Ensuite tu testes le caractère suivant
}
Navré, de ne pouvoir te donner le code exact mais c'est comme sa que je vois les choses.
Tiradus
je ne suis pas un pro de programmation ou de php ;)
Mais je peux juste te donner une idée de principe (Cependant il doit certainement y avoir plus optimal et plus simple) :
=============
La synthaxe du code est complètement fausse c'est juste pour l'idée
=============
// Ta variable de base
$variable = lalala12345;
// Une variable temporaire en dehors de la boucle (Je sais pas si il y a besoin)
$var;
// Une boucle qui te permettra de tester chaque caractère de
// ta chaine pour savoir si c'est numérique ou non.
for (i=0; i<(strlen($variable)-1);i++) {
// Permet de sélectionner quel caractère tu va tester avec le i de la boucle
$j=$i++;
// Chaque tour de boucle tu va tester le caractère suivant
$str=substr($variable, $i, $j );
// Si le caractère est de type entier
if (is_int($str)){
// Tu l'ajoutes aux autres
$var=$var+$str;
}
// Ensuite tu testes le caractère suivant
}
Navré, de ne pouvoir te donner le code exact mais c'est comme sa que je vois les choses.
Tiradus