Maison >développement back-end >tutoriel php >Expression régulière universelle pour la correspondance d'URL avec ou sans protocoles
Expression régulière pour faire correspondre les URL avec ou sans protocoles
Pour les URL pouvant inclure ou non le préfixe "http://www" , une expression régulière peut être utilisée pour effectuer l'opération de correspondance. Un modèle RegEx détaillé est fourni ci-dessous :
((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+$%_.-]*)?
Pour utiliser ce modèle pour la validation d'URL, il peut être appliqué de la manière suivante :
<code class="php">if (preg_match("~^$regex$~i", 'www.example.com/etcetc', $m)) var_dump($m); if (preg_match("~^$regex$~i", 'http://www.example.com/etcetc', $m)) var_dump($m);</code>
Cette solution RegEx offre une méthode complète pour faire correspondre les URL, qu'elles contiennent ou non le préfixe "http://".
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!