PHP expression régulières

wagner51 Messages postés 10 Statut Membre -  
wagner51 Messages postés 10 Statut Membre -
Bonjour,
J'utilise PHP 4.0. Je souhaite écrire une fonction qui scanne une chaîne de caractère et qui extrait chaque chiffre. Les chiffres extraits sont mis les uns derrière les autres afin de créer une nouvelle chaîne ne contenant que les chiffres extraits. On obtient donc un nombre.

J'ai écris ceci mais cela s'arrête à la première occurence seulement. Je souhaiterais que cela scanne toute la chaîne de caractères... Merci pour votre aide.

function recup_digits($chaine)
{
ereg("([0-9]).",$chaine,$chaine2);
return $chaine2[0];
}
A voir également:

4 réponses

Utilisateur anonyme
 
Salut,
Je te propose une solution un peu tordu mais c'est tou ce qui me vient à l'esprit pour le moment. :o)
La fonction split() correspond peut etre plus à ce que tu veux faire...
http://www.php.net/manual/fr/function.split.php

Kalamit,
Je ponce donc j'essuie
0
jisisv Messages postés 3678 Statut Modérateur 934
 
Essaye qqch du genre:
[johand@zoot] ~/src/php $cat chiffres.php
<?php
function getdigits($string)
{
$res = preg_match_all("/([0-9])/", $string, $results);
// http://php.easynet.be/manual/en/function.join.php
// http://php.easynet.be/manual/en/function.preg-match-all.php
$nombre = join("", $results[1]);
return $nombre;
}

$s1="a1b2c3";
print(getdigits($s1). "\n");
$s1="a12b34c56d";
print(getdigits($s1) . "\n");
?>

[johand@zoot] ~/src/php $php4 -q chiffres.php
123
123456

Johan
The software said "Requires Windows98, Win2000, or better,
So I installed Unix.
0
Utilisateur anonyme
 
Et voila...
Qd Johan s'en mêle, j'ai toujours l'air d'un couillon... :o)

Kalamit,
Je ponce donc j'essuie
0
wagner51 Messages postés 10 Statut Membre
 
Merci à vous deux pour votre aide. C'est très sympa :D
0