Heim >Web-Frontend >js-Tutorial >Wie erstelle ich einen robusten regulären Ausdruck zum Erkennen von URLs mit oder ohne „http://'-Präfix?

Wie erstelle ich einen robusten regulären Ausdruck zum Erkennen von URLs mit oder ohne „http://'-Präfix?

Linda Hamilton
Linda HamiltonOriginal
2025-01-05 21:34:41694Durchsuche

How to Create a Robust Regular Expression for Detecting URLs with or without

So erstellen Sie eine umfassende URL-RegEx

RegEx-Muster sind ein leistungsstarkes Werkzeug zum Abgleichen bestimmter Textformate. Die Identifizierung einer URL mithilfe eines RegEx-Musters erfordert sorgfältige Aufmerksamkeit, um eine genaue Erkennung sicherzustellen.

In Ihrem Fall tritt die Schwierigkeit auf, wenn Sie versuchen, URLs ohne das Präfix „http://“ zu erkennen. Um dies zu beheben, finden Sie hier ein erweitertes RegEx-Muster:

https?:\/\/(www\.)?[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b([-a-zA-Z0-9()@:%_\+.~#?&//=]*)

Aufschlüsselung des Musters:

  • Protokoll (optional):

    • https? Entspricht „http://“ oder „https://“ (Groß- und Kleinschreibung wird nicht beachtet).
  • Subdomain-Präfix (optional):

    • (www.) entspricht dem „www.“ Subdomain-Präfix.
  • Domainname:

    • [-a-zA-Z0-9@:%._ ~#=]{1,256} entspricht einer beliebigen Kombination aus Buchstaben, Zahlen und den angegebenen Sonderzeichen mit einer maximalen Länge von 256 Zeichen.
  • Top-Level-Domain:

    • .[a-zA-Z0-9()]{ 1,6} entspricht der Top-Level-Domain (z. B. „.com“, „.org“) mit einer maximalen Länge von 6 Zeichen.
  • Pfad und Abfragezeichenfolge (optional):

    • b([-a-zA-Z0- 9()@:%_ .~#?&//=]*) erfasst alle zusätzlichen Pfadelemente im URL.

Alternativer Regex ohne erforderliches Protokoll:

[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b([-a-zA-Z0-9()@:%_\+.~#?&//=]*)

Diese Version entfernt die Protokollanpassungskomponente und ist somit geeignet für URLs wie „www.google.com“.

Das obige ist der detaillierte Inhalt vonWie erstelle ich einen robusten regulären Ausdruck zum Erkennen von URLs mit oder ohne „http://'-Präfix?. 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