Regex pour numéro de portable avec ou sans code de pays

Je dois valider un champ de texte dans mon formulaire d'inscription pour lequel je souhaite un Regex.

La zone de texte acceptera un numéro de téléphone mobile comme 9999999999 (10 chiffres – à partir de 7 ou 8 ou 9). L'utilisateur peut également écrire +919999999999, où +91 est le code du pays (+91 pour l'Inde, mais peut accepter tout autre comme +110 ou +52), ou il peut également écrire 09999999999 (premier 0 pour le pays)

Ici, l'utilisateur dispose de 3 choix,

  1. Ajout du numéro de téléphone portable avec le code du pays
  2. Simplement sans code de pays ou 0 préfixé
  3. Avec un zéro préfixé en numéro de mobile.

Bien que non requis, ma page est dans asp.net, et j'utilise un validateur d'expression régulière intégré.

D'après ce que je peux voir, cela devrait fonctionner. Le préfixe est facultatif et est stocké dans le premier groupe de correspondance, le numéro principal entrant dans le deuxième groupe.

^([0|\+[0-9]{1,5})?([7-9][0-9]{9})$ 

Mais si vous pouvez nous donner des cas de test pour chacun d'entre eux, cela nous aiderait à vous donner un rapport de travail pour ce que vous voulez.

Props to SchlaWiener dans les commentaires pour la limite correcte sur la longueur du code de pays.

Regexp simple pour la validation du numéro de téléphone mobile indien: /^[0]?[789]\d{9}$/

Prise en charge 08888888888 (zéro en ajoutant) 7878787878,8634456876,9545559877 (tout numéro de mobile précède 7,8,9 et suivi d'autres 9 chiffres)

Fonction complète

 function mobileNumber(){ var Number = document.getElementById('YOUR ELEMENT ID').value; var IndNum = /^[0]?[789]\d{9}$/; if(IndNum.test(Number)){ return; } else{ $('#errMessage').text('please enter valid mobile number'); document.getElementById('profile_telephoneNumber').focus(); } } 

Vous pouvez également le faire en utilisant la manipulation des chaînes. Vérifiez ce lien

 str = "+919999999999" cc = str.split(str.slice(-10))[0] 

Le résultat sera +91

Cela devrait faire l'affaire:

 ^(\+[\d]{1,5}|0)?[7-9]\d{9}$ 

http://fiddle.re/av1k

 if(document.getElementById('mobile_number').value != ""){ var y = document.getElementById('mobile_number').value; if(isNaN(y)||y.indexOf(" ")!=-1) { alert("Invalid Mobile No."); document.getElementById('mobile_number').focus(); return false; } if (y.length>10 || y.length<10) { alert("Mobile No. should be 10 digit"); document.getElementById('mobile_number').focus(); return false; } if (!(y.charAt(0)=="9" || y.charAt(0)=="8")) { alert("Mobile No. should start with 9 or 8 "); document.getElementById('mobile_number').focus(); return false } } 

Et vous pouvez également voir dans plus de lien exemple cliquez ici

http://p2p.wrox.com/javascript-how/64920-validation-phone-number-mobile-number.html