"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Comment faire correspondre des URL avec ou sans préfixes HTTP et WWW facultatifs à l'aide d'une expression régulière ?

Comment faire correspondre des URL avec ou sans préfixes HTTP et WWW facultatifs à l'aide d'une expression régulière ?

Publié le 2024-11-09
Parcourir:916

How to Match URLs with or Without Optional HTTP and WWW Prefixes Using a Regular Expression?

Correspondance d'URL avec des préfixes HTTP et WWW facultatifs

Les expressions régulières sont des outils puissants pour les tâches complexes de correspondance de modèles. Lorsqu'il s'agit de faire correspondre des URL, il existe souvent des variations dans le format, par exemple s'il inclut « http://www ». préfixe ou non.

Solution utilisant une expression régulière

Pour faire correspondre les URL avec ou sans le "http://www." préfixe, l'expression régulière suivante peut être utilisée :

((https?|ftp)://)?
([a-z0-9 !*(),;?&=$_.-] (:[a-z0-9 !*(),;?&=$_.-] )?@)?
([a-z0-9\-\.]*)\.(([a-z]{2,4})|([0-9]{1,3}\.([0-9]{1,3})\.([0-9]{1,3})))
(:[0-9]{2,5})?
(/([a-z0-9 $_%-]\.?) )*/?
(\?[a-z &\$_.-][a-z0-9;:@&%= /$_.-]*)?
(#a-z_.-][a-z0-9 $%_.-]*)?

Répartition de l'expression :

  • (https?|ftp):// - Identifiant de protocole facultatif (http ou ftp)
  • ([a-z0-9 !*(),;?&=$_.-] (:[a-z0-9 !*(),;?&=$_.-] )?@)? - Utilisateur facultatif et mot de passe
  • ([a-z0-9-.]*).(([a-z]{2,4})|([0-9]{1,3}.([0 -9]{1,3}).([0-9]{1,3}))) - Nom d'hôte ou IP adresse
  • (:[0-9]{2,5})? - Numéro de port facultatif
  • (/([a-z0-9 $ _%-].?) )*/? - Chemin facultatif
  • (?a-z &$_.-*)? - Requête facultative string
  • (#a-z_.-][a-z0-9 $%_.-]*)? - Ancre facultative

Exemple d'utilisation

Pour vérifier si une chaîne donnée correspond à l'expression régulière, utilisez ce qui suit syntaxe :

if(preg_match(~^$regex$~i, 'www.example.com/etcetc', $m))

Ceci renverra TRUE si la chaîne correspond au modèle d'URL avec ou sans le "http://www." préfixe.

Déclaration de sortie Cet article est reproduit sur: 1729557683 S'il y a une contrefaçon, veuillez contacter [email protected] pour le supprimer.
Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3