6
votes

Comment puis-je valider une URL en JavaScript à l'aide d'une expression régulière

Je veux valider une zone de texte qui ont une valeur d'URL comme une adresse de blogs ou une adresse de site Comment puis-je valider cette zone de texte dans JS


0 commentaires

4 Réponses :


2
votes

Faites un test de base de RegexP pour le formatage. Puis ping l'URL à l'aide d'un XMLHTTPRequest pour vous assurer qu'il existe. Un exemple utilisant jQuery ... xxx


0 commentaires

10
votes

Je suppose que vous savez comment obtenir la valeur de code> avec JavaScript. Donc, votre problème écrit la fonction spécifique de validation de l'URL.

Nous pourrions d'abord envisager vérifier que l'URL est syntaxiquement correcte fort>. P>

Quelques exemples, que notre validateur URL devrait Examinez certainement OK: P>

function validateUrl(url) {
  return /^[a-z]+:\/\//i.test(url);
}
  • / code> - début de l'expression régulière li>
  • ^ code> - correspond au début de la chaîne li>
  • [A-Z] code> - correspond à A, B, C, ..., x, y ou z. li>
  • + code> - signifie que le motif précédent peut être répété une ou plusieurs fois. li>
  • : code> - correspond au symbole du côlon lui-même. Li>
  • \ / code> - correspond à la barre oblique / code> (sans le backslash javascript penserait que c'est la fin de l'expression régulière). Li>
  • / code> - termine l'expression régulière. li>
  • i code> - il s'agit d'un modificateur, qui rend cette expression régulière insensible à une expression régulière. li>
  • .test (URL) code> - Appelle le test code> méthode d'objet d'expression régulier avec URL code> comme paramètre. Lorsque le paramètre correspond à l'expression régulière, il renvoie true code> sinon false code>. Li> ul>

    En outre, vous voudrez peut-être laisser entrer une URL sans la partie http: // code>. Cela signifie que vous devez vraiment valider le nom de domaine ou l'adresse IP ou quoi que ce soit. P>

    Je suppose que vous êtes assez confus d'ici, et c'est intentionnel. Vous ne devriez vraiment pas écrire JavaScript pour faire la validation de l'URL par vous-même, il est trop difficile de bien réussir. Au lieu de cela, vous devriez utiliser une fonction de bibliothèque forte>, qui est testée et confirmée pour être correcte par de nombreux experts. P>

    Peut-être que la Fraim JavaScript que vous utilisez a déjà un bon outil pour ce travail. Dans ce cas, utilisez-le. Malheureusement, je ne peux pas suggérer une bibliothèque spécifique pour la validation de l'URL spécifique spécifiquement. P>

    En outre, vous voudrez peut-être envisager Pinging l'URL forte> Comme Josh Stodola suggéré, de vérifier qu'il existe vraiment. Bien que la façon dont Josh suggère, peut être problématique au cas où la ressource référencée par URL est un fichier de 10 Go :) p> p>


0 commentaires

-1
votes

Consultez le Library Expression régulière , qui possède un grand référentiel d'expressions régulières pour toutes sortes de validations. Ils fournissent également un outil de test en ligne.


0 commentaires

1
votes

<div id="response"></div>


0 commentaires