fonction pour recuperer un chiffre d'une chaine [Résolu]
Sataneo85
Posté le 07-10-2005 à 23:09:02
bonsoir tout le monde
j'ai une variable qu'on apellera $chaine
qui contient "N 01 du 2005-10-06"
Je voudrais en extraire le 01
Y a t-il une fonction tres rapide qui me permette de récupérer le premier entier rencontré dans la chaine ?
Message édité par Sataneo85 le 08-10-2005 à 09:11:45
si le motif est toujours la meme utilise $substr("chaine",3,4)
Message édité par vlad' le 07-10-2005 à 23:32:22
Sataneo85
Posté le 07-10-2005 à 23:35:21
ereg("[:digit:]{2}","ta chaine",$regs); je presume que {2} correspond au nb de chiffre composant mon entier ? si il es variable (et il l'est) comment puis je faire ? et un petit lien vers une page expliquant cette fonction serait la bienvenue merci a vous
ereg("[:digit:]{".$nombre_de_chiffre."}","ta chaine",$regs);
$nombre=$regs[1]; // premiere occurence du motif dans la chaine
Message édité par vlad' le 07-10-2005 à 23:40:45
Sataneo85
Posté le 07-10-2005 à 23:43:27
oki vlad mais $nombre_de_chiffre je fai comment pour le renseigner ?
car le chiffre peut etre aussi bien 1 que 150
omega2
Posté le 08-10-2005 à 00:05:16
* = n'importe quel nombre.
Sataneo85
Posté le 08-10-2005 à 00:06:13
oki je vais essayer tout ca demain merci beaucoup si quelqu'un a d'autre truc on sait jamais
non pas que je doute de toi vlad' question : et il s'arretera des qu'il recontrera un autre type que du numérique? ou je v devoir faire un tant que ?
Message édité par Sataneo85 le 08-10-2005 à 00:16:22
vlad'
Posté le 08-10-2005 à 00:36:00
ereg("[:digit:]{+}","ta chaine",$regs);
$nombre=$regs[1]; // premiere occurence du motif dans la chaine
$reg[i] sera le i eme nombre
Message édité par vlad' le 08-10-2005 à 15:33:05
Sataneo85
Posté le 08-10-2005 à 09:09:08
J'ai essayer vlad promis Mais j'ai pas reussi avec ton truc
Du coup en cherchant des expressions regluieres j'ai trouver ca et ca marche nikel, je post on sait jamais ca pourrait servir a quelqu'un
Code :
<?
$chaine = 'N 12345 du 2005-10-06';
preg_match_all('#[0-9]+#',$chaine,$extract);
$nombre = $extract[0][0];
print($nombre); // affichera exactement 12345
?>
Message édité par Sataneo85 le 08-10-2005 à 09:09:29