Merci, j'ai finalement retenu cette regexp, légèrement arrangée :à laquelle j'ai rajouté un traitement (code piqué sur le web (et aussi légèrement modifié) pour m'assurer que le numéro comporte au moins 7 chiffres (je ne connais pas tous les formats, donc je prends de la marge)) :Code:/^[+]?\d(?:[-\s\,]?\d)+$/
Je peux donc cocher "résolu" et j'en profite quand même pour vous montrer à quoi ça sert. Voici une version non confidentielle du site sur lequel je travaille. J'ai supprimé ici la mise à jour de la base de donnée (MySQL), l'envoi des mails et l'affichage des données confidentielle. Si on fait "list of participants", ça va quand même chercher les infos dans la base de données. Ce qui est sympa (et testable), c'est l'upload des photos (c'est un plugin jQuery, donc en js, mais ce plugin appelle lui-même un script PHP qui fait l'upload). (Et c'est un code js horriblement compliqué). Ce qui est sympa aussi, c'est l'agenda : un ppt converti en flash. Normalement, ça devrait être de l'intranet, mais comme c'était urgent, j'ai squatté l'espace internet d'une assoc (mais c'est transparent pour eux). Et si on fait "list of participants", on comprend la nécessité de tester les codes internationaux car il y a déjà US, Inde, Chine, Italie, Suède...et FranceCode:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 function substr_count( haystack, needle, offset, length ) { var pos = 0, cnt = 0; if(isNaN(offset)) offset = 0; if(isNaN(length)) length = 0; offset--; i=0; for (i=0;i<needle.length;i++) { while( (offset = haystack.indexOf(needle[i], offset+1)) != -1 ){ if(length > 0 && (offset+needle[i].length) > length){ return false; } else{ cnt++; } } } return cnt; } var sOcc = ['0','1','2','3','4','5','6','7','8','9']; var iCpt = substr_count (objForm.officenumber.value, sOcc);