PHP-Praxis für reguläre Ausdrücke: Abgleich von URLs
Mit der Popularität des Internets sind URLs zu einem unverzichtbaren Bestandteil des täglichen Lebens geworden. Beim Webdesign, beim Daten-Crawling usw. müssen wir häufig reguläre Ausdrücke verwenden, um URLs abzugleichen. In diesem Artikel konzentrieren wir uns darauf, wie reguläre Ausdrücke in PHP zum Abgleichen von URLs verwendet werden können.
Die Grundstruktur einer URL
Lassen Sie uns zunächst die Grundstruktur einer URL verstehen. Im Allgemeinen besteht eine URL aus den folgenden Teilen:
Protokollname: http, https usw.
Hostname: Domänenname oder IP-Adresse
Portnummer: 80, 8080 usw. (optional)
Pfad: zeigt auf spezifischer Ort der Seite (optional)
Abfragezeichenfolge: Parameter, die während der GET-Anfrage übergeben werden (optional)
Fragment: Anker, der auf einen bestimmten Ort innerhalb der Seite zeigt (optional)
Ein paar Beispiele:
http://www. example.com:8080/index.html?id=1#top
https://192.168.1.1/aboutUs.html
https://www.google.com/search?q=php+regular+expression
ftp: //ftp.example.com/public/files/manual.pdf
Die obigen Beispiele umfassen verschiedene Protokolle, Hostnamen, Portnummern, Pfade, Abfragezeichenfolgen und Fragmente.
Das Konzept des regulären Ausdrucks
Regulärer Ausdruck ist ein String-Matching-Mechanismus, mit dem mehrere Arten von Informationen abgeglichen werden können. Reguläre Ausdrücke bestehen normalerweise aus einigen Sonderzeichen, gewöhnlichen Zeichen, Klammern und anderen Parametern, mit denen die Anzahl, Position und Art der Zeichen angegeben werden können. In PHP können wir die Funktion preg_match() verwenden, um reguläre Ausdrücke abzugleichen.
Erstellen Sie einen einfachen regulären Ausdruck
Nachdem wir die oben genannten Grundkonzepte verstanden haben, können wir einen einfachen regulären Ausdruck erstellen, der der URL entspricht. Das Folgende ist ein konkretes Beispiel:
$pattern = '/^((http|https|ftp)://)?[a-z0-9-]+(.[a-z0-9-]+)+ ( [/?#:][^s]*)?$/';
$url = 'http://www.example.com/index.html?id=1';
preg_match($pattern, $ url , $matches);
print_r($matches);
Im obigen Beispiel haben wir einen regulären Ausdruck $pattern definiert, um die URL abzugleichen, und dann die Funktion preg_match() zum Abgleichen verwendet. Abschließend werden die passenden Ergebnisse ausgedruckt.
Code analysieren
Regulärer Ausdruck besteht aus zwei Teilen, nämlich: Grundstruktur und passendem Teil jeder Komponente wie Protokollname, Hostname, Pfad usw. Lassen Sie uns sie unten einzeln erklären.
Grundstruktur: '^((http|https|ftp)://)?'
Protokollname: '(http|https|ftp)://'
Hostname: '[a-z0-9-]+(.[a-z0-9-]+)+ '
Pfad, Abfragezeichenfolge und Fragment: '([/?#:]1*)?'
Zusammenfassend lässt sich sagen, dass der obige reguläre Ausdruck mit jedem URL-Typ übereinstimmen kann. Zu beachten ist, dass wir in der tatsächlichen Entwicklung möglicherweise die Regeln regulärer Ausdrücke entsprechend den spezifischen Anforderungen ändern oder erweitern müssen.
Zusammenfassung
Reguläre Ausdrücke werden in PHP häufig verwendet und können zum Zuordnen und Überprüfen von Zeichen, Zahlen, E-Mails, Telefonnummern und anderen Arten von Informationen verwendet werden. Der obige Artikel stellt vor, wie URLs mithilfe regulärer Ausdrücke abgeglichen werden, und führt außerdem kurz in die Grundkonzepte regulärer Ausdrücke ein. Ich hoffe, dass die Leser ein tieferes Verständnis für die Anwendung regulärer Ausdrücke erhalten.
Das obige ist der detaillierte Inhalt vonRegulärer PHP-Ausdruck in Aktion: passende URLs. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!