Heim  >  Artikel  >  Backend-Entwicklung  >  Universeller regulärer Ausdruck für den URL-Abgleich mit oder ohne Protokolle

Universeller regulärer Ausdruck für den URL-Abgleich mit oder ohne Protokolle

DDD
DDDOriginal
2024-10-22 08:47:30858Durchsuche

Universal Regular Expression for URL Matching with or without Protocols

Regulärer Ausdruck zum Abgleichen von URLs mit oder ohne Protokolle

Für URLs, die möglicherweise das Präfix „http://www“ enthalten oder nicht , kann ein regulärer Ausdruck verwendet werden, um den Abgleichvorgang durchzuführen. Nachfolgend finden Sie ein detailliertes RegEx-Muster:

((https?|ftp)://)?([a-z0-9+!*(),;?&amp=$_.-]+(:[a-z0-9+!*(),;?&amp=$_.-]+)?@)?([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+$%_.-]*)?

Um dieses Muster für die URL-Validierung zu nutzen, kann es auf folgende Weise angewendet werden:

<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>

Diese RegEx-Lösung bietet eine umfassende Möglichkeit um URLs abzugleichen, unabhängig davon, ob sie das Präfix „http://“ enthalten oder nicht.

Das obige ist der detaillierte Inhalt vonUniverseller regulärer Ausdruck für den URL-Abgleich mit oder ohne Protokolle. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn