7.12 Den Pfad aus einer URL extrahieren

Problem

Sie wollen den Pfad aus einem String extrahieren, der eine URL enthält. So wollen Sie zum Beispiel /index.html erhalten, wenn Sie http://www.regexcookbook.com/index.html oder /index.html#fragment als Ausgangstext haben.

Lösung

Extrahieren des Pfads aus einem String, der eine gültige URL enthält. Die folgende Regex findet alle URLs, auch wenn diese keinen Pfad enthalten:

\A
# Schema und Authority überspringen, wenn vorhanden
([a-z][a-z0-9+\-.]*:(//[^/?#]+)?)?
# Pfad
([a-z0-9\-._~%!$&'()*+,;=:@/]*)
  • Regex-Optionen: Freiform, Groß-/Kleinschreibung ignorieren

  • Regex-Varianten: .NET, Java, PCRE, Perl, Python, Ruby

^([a-z][a-z0-9+\-.]*:(//[^/?#]+)?)?([a-z0-9\-._~%!$&'()*+,;=:@/]*)
  • Regex-Optionen: Groß-/Kleinschreibung ...

Get Reguläre Ausdrücke Kochbuch now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.