Text 🔒 Läuft im Browser — keine Daten werden gesendet

URL Regex

Finden Sie Webadressen in Text mit einem kurzen Muster und sehen Sie genau, wo es aufhört, bevor Sie es in Code übernehmen.

/ /
Testtext
Treffer & Gruppen
Treffer erscheinen hier...

URL Regex

Links aus Logs, Chat-Exporten oder gescraptem Text herauszuziehen ist ein Fall für einen regulären Ausdruck, und das Muster sollte kurz genug sein, um es lesen zu können. Diese Seite öffnet den Regex-Tester mit dem Muster URL (http/https) aus der Musterbibliothek, https?:\/\/[^\s/$.?#][^\s]*, mit den Flags gi.

So liest sich das Muster

TeilBedeutung
https?http, mit optionalem s
:\/\/Der Doppelpunkt und die zwei Schrägstriche, maskiert, damit das Muster auch zwischen Schrägstrichen im Code funktioniert
[^\s/$.?#]Ein Zeichen, das den Hostnamen beginnt: kein Leerzeichen, Schrägstrich, Dollarzeichen, Punkt, Fragezeichen oder Rautezeichen
[^\s]*Alles Weitere bis zum nächsten Leerzeichen
giJeden Link finden, in beliebiger Groß- und Kleinschreibung

Was sie erfasst und was sie übersieht

TextErgebnis
https://logicutil.com/tool/regex-testerDie ganze Adresse
http://example.org/page?q=1#topDie ganze Adresse, samt Query und Fragment
http://localhost:8080/xDie ganze Adresse, samt Port
HTTPS://EXAMPLE.COM/XGetroffen, dank des Flags i
https://例子.测试/路径Getroffen: nicht-lateinische Domains und Pfade bleiben erhalten
Visit https://example.com.https://example.com., mit dem Punkt
(https://example.com/a)https://example.com/a), mit der Klammer
www.example.comKein Treffer: Es fehlt das Schema
ftp://files.example.comKein Treffer: nur http und https

Eine strengere Version

Um Satzzeichen am Ende auszuschließen, beenden Sie den Treffer mit einem Lookahead: https?:\/\/[^\s/$.?#][^\s]*?(?=[\].,;:!?)]*(?:\s|$)). Es nimmt die kürzeste Folge, auf die nur noch Satzzeichen und dann ein Leerzeichen oder das Textende folgen. So ergibt Visit https://example.com. den Treffer https://example.com und (https://example.com/a) den Treffer https://example.com/a. Der Preis: Ein Link, der wirklich auf eine Klammer endet, wie manche Wikipedia-Adressen, verliert sie.

Links finden heißt nicht, sie zu validieren

Ein solches Muster beantwortet die Frage "enthält dieser Text etwas, das wie ein Link aussieht", nicht "ist das eine funktionierende Adresse". Für einen einzelnen Wert in JavaScript ist new URL(value) strenger: Es wirft einen Fehler bei https:// ganz ohne Host. Nutzen Sie die Regex, um Kandidaten im Text zu finden, und lassen Sie dann new URL() oder Ihren Server entscheiden.

Verwandte Seiten

Wandeln Sie gefundene Links mit [$&]($&) auf der Seite Regex Suchen und Ersetzen in Markdown um, und sehen Sie sich im JavaScript Regex Tester an, wie sich die Flags verhalten. E-Mail-Adressen haben ihre eigenen Tücken, die der Leitfaden zu Regex für E-Mail-Adressen behandelt.

Passende Anleitungen