287 votes

Extraire le nom du domaine racine de la chaîne

Je voudrais correspondre à la racine d’une URL et non l’URL complète d’une chaîne de texte. Compte tenu de :

Je veux obtenir les 2 instances dernières résolvant à la ou domaine.

J’ai entendu regex est lent et ce serait mon deuxième expression regex sur la page, donc s’il y a en tout cas faire sans regex faites le moi savoir.

Je cherche une version JS/jQuery de cette solution.

336voto

Filip Roséen - refp Points 24995

Une astuce sans utiliser les expressions régulières :

Enveloppez ce qui précède dans une fonction comme le ci-dessous et vous avez vous-même une superbe façon d’arracher la partie domaine de l’URI.

311voto

lewdev Points 101

Essayez :

Quel que soit le protocole ou pas, vous pouvez extraire le domaine. Il s’agit d’une solution très simplifiée, de non-regex, donc je pense que cela va faire.

Exemple :

  • Je vous remercie Timmerz et renoirb pour vos suggestions !

145voto

gilly3 Points 33285

Essayez ceci :

Si vous souhaitez exclure le port de votre résultat, utilisez plutôt cette expression :

Edit : Pour éviter que des domaines spécifiques correspondant, utilisez une préanalyse négative.``

38voto

Andrew White Points 23508

L’analyse une URL peut être difficile car vous pouvez avoir des numéros de ports et de caractères spéciaux. Par conséquent, je recommande d’utiliser quelque chose comme parseUri du pour faire pour vous. Je doute performance va être un problème, sauf si vous analysez des centaines d’URL.

20voto

BlackDivine Points 977

J’ai essayé d’utiliser les solutions données, choisis un était une overdose à mon usage et « Création d’un élément » un mess up pour moi.

Il n’est pas encore prêt pour le Port dans l’URL. J’espère que quelqu'un estime qu’il est utile


Cela fonctionne :

Résultat :

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X