Regex pour le match de domaine simple
Je suis en train d'essayer de correspondre à un domaine simple: example.com
Mais toutes les combinaisons.
Comment ferais-je pour couvrir:
https://example.com http://www.example.com etc.
Avez-vous d'utiliser une seule regex? À l'aide d'une URL existante de l'analyseur, puis les pièces individuellement seraient moins enclins à faire des erreurs.
bien à l'origine j'avais
Qui permettrait à certains des Url non valide à travers (comme
bien à l'origine j'avais
/^https?:\/\/.*?\.?facebook\.com\//
mais pensé qu'il pourrait ne pas fonctionner dans tous les cas ?Qui permettrait à certains des Url non valide à travers (comme
http://a_b.facebook.com/
), mais qui pourrait ne pas être un problème.OriginalL'auteur Andy | 2012-01-12
Vous devez vous connecter pour publier un commentaire.
à l'aide de code:
Je l'a amélioré pour correspondre comme "http://a.b.example.com"
\w
sont valables dans un nom de domaine (_
en particulier) et les tirets autorisés.merci - mais pouvez-vous ajouter dans le code javascript s'échappe pour moi ?
Je vous remercie.
Vous pouvez essayer de l'expression régulière regexpal.com
merci encore pour votre aide, mais je suis toujours avoir des probs. voir jsfiddle.net/v4WVU
OriginalL'auteur itea
Plus générique exemple, j'ai utilisé:
Noter que cette solution n'est pas de sélectionner la bonne étiquette pour 5 caractère Tld. Exemple:
Sera ramassé comme des 'co' au lieu de 'mylabel', mais
serait correspondre correctement comme 'mylabel'. L'expression rationnelle a été assez bon pour moi, même avec cette limitation.
Noter que les 63 limite de caractères pour le label est un RFC. Espérons que cela aide ceux qui recherchent la même réponse dans l'avenir.
OriginalL'auteur Daniel
Vous pouvez probablement utiliser simplement correspondre au nom de domaine d'une URL:
Il correspond à aucune des chaînes de caractères suivantes:
Mise à JOUR: Pour correspondre URL complète, et pas seulement de nom de domaine, l'utiliser:
Effectivement, il fonctionne, voir là: jsfiddle.net/v4WVU/3 Vous avez été d'essayer de faire correspondre
location.href
qui a étéhttp://fiddle.jshell.net/_display/
. Comme je l'ai écrit ci-dessus RegEx est pour la mise en correspondance de nom de domaine n'est pas le nom complet de l'URL.OriginalL'auteur anubhava
Les ouvrages suivants, en Java,
^(http:|https:|)[/][/]([^/]+[.])*example.com$
et correspond à votre cas de test, et n'est pas correspondent à des cas comme
OriginalL'auteur Brad Parks
Cela va correspondre correctement l'URL pour toute variation de la ci-dessous, plus rien après .com
Résultat sera vrai ou faux
OriginalL'auteur K20GH