Création
d'entreprise
Posez votre question Signaler

PHP expression régulières

wagner51 10Messages postés 19 décembre 2002Date d'inscription - Dernière réponse le 29 janv. 2003 à 10:52
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];
}
Lire la suite 

PHP expression régulières »

4 réponses
Réponse
+0
moins plus
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
Ajouter un commentaire
Réponse
+0
moins plus
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.
Ajouter un commentaire
Réponse
+0
moins plus
Et voila...
Qd Johan s'en mêle, j'ai toujours l'air d'un couillon... :o)

Kalamit,
Je ponce donc j'essuie
Ajouter un commentaire
Réponse
+0
moins plus
Merci à vous deux pour votre aide. C'est très sympa :D
Ajouter un commentaire
Ce document intitulé « PHP expression régulières » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?