PHP expression régulières

wagner51 Messages postés 10 Statut Membre - 28 janv. 2003 à 11:18
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
28 janv. 2003 à 16:17
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
28 janv. 2003 à 17:02
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
28 janv. 2003 à 17:36
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
29 janv. 2003 à 10:52
Merci à vous deux pour votre aide. C'est très sympa :D
0