Plateformes d'assistanceDiscussions & Opinions des Communautés
|
|
|
|
[Expression régulière]Chaine de 9 chiffres
Dernière réponse le 27 jun 2007 à 14:41:44 Dinheru, le 27 jun 2007 à 11:24:15Bonjour
Voila je suis une bille en expression régulière et j'aimerais bien un peu d'aide ;p
Je voudrais vérifier qu'une chaine n'est composée que de 9 chiffres ni plus ni moins.
Exemple : 123456789
Est que quelqu'un aurait une idée de comment faire ?
Merci d'avance.
PS : j'ai trouver un petit site pratique pour tester les expressiosn régulières
http://www.annuaire-info.com/expression-reguliere.html
Mar-plij ur chopinad bier melen !!Configuration: Windows XP
Firefox 2.0.0.4
Meilleures réponses pour « [Expression régulière]Chaine de 9 chiffres » dans :
Sed - Trucs et astuces VoirSubstitution
Affichage
Suppression
Espace et tabulation
Ligne vide
Intervalle régulier
Divers
Joindre des lignes
Affichage insensible à la casse
Substitution
Substituer "foo" par "bar" à chaque ligne
Seulement la 1ère...
PHP - Expressions régulières VoirQu'est-ce qu'une expression régulière?
Les expressions régulières sont des modèles créés à
l'aide de caractères ASCII permettant de manipuler des
chaînes de caractères, c'est-à-dire permettant de trouver les portions de
la chaîne correspondant au...
Javascript - L'objet RegExp VoirLes particularités de l'objet RegExp
L'objet RegExp est un objet permettant de manipuler des expressions
régulières, c'est-à-dire
des modèles créés à l'aide de caractères ASCII permettant de manipuler
des chaînes de caractères,
afin de trouver des...
Avec preg_match :-)
$str = 'Le nombre 123456789 possède 9 chiffres.';
$matches = array();
if(preg_match ('/.*?([0-9]{9,9}).*?/', $str, $matches)){
echo 'Le nombre est '. $matches[1];
}
else{
echo 'Pas de nombre trouvé';
}
J'ai pas testé mais ça doit être ça. ..et le...le...enfin, non parce c'est...ya...quand...bah tu sais là le... |
Salut,
'/([0-9]{9,9})/'
doit être suffisante pour récupérer la 1ère occurence (vu qu'elle n'est pas ancrée) donc le moteur va chercher une chiffre suit d'une chiffre suit d'une chiffre......9fois si on a plusieurs (ce n'est pas son cas) alors il faut utiliser le modificateur /g de la regex (je ne sais pas s'il y a en PHP) Il y a quand même une piège si par exemple la chaîne contient $str = 'Le nombre 123456789123456789 possède 18 chiffres.'; Ca sera peut être mieux d'utiliser un ancrage (mot, ou non chiffre) Et le test ne sera pas fiable vu qu'il veut vérifier si la chaîne contient 9 chiffres ni plus ni moins Je capture les 1ères 9 mais j'ai encore 9 qui reste et ailleurs je ne comprends pas pourquoi ça ne marche pas ^[0-9]{9}$ {9} veut dire 9 occurences (kilian a raison) c'est un peu rédondant {9,9} il faut savoir exactement sur quelle chaîne tu traites la regex En Perl j'aurais écrit @occurence = $var =~ /\D\(d{9})\D/g;
scalar(@occurence) == 0? print "rien\n" :
scalar(@occurence) == 1? print "une occurence trouvée\n" :
print @occurence+0, " occurences trouvées\n";--
lami20j P.S Je vais étudier les regex en PHP, c'est promis :-)) |

