Feedback

C# - Validierung eines URL

Veröffentlicht von am 04.10.2008
(1 Bewertungen)
Validiert einen URL.
GFU-Schulungen  [Anzeige]

Angular mit ASP.NET Core für .NET-Entwickler

.NET ist Ihnen vertraut, als Entwickler verfügen Sie über einschlägige Kenntnisse. In diesem Kurs lernen Sie nun, Angular in .NET-Umgebungen einzusetzen. Sie verstehen das Konzept von Angular und integrieren das clientseitige JS-Framework sicher in.NET-Anwendungen.

ASP.NET Core - Der Einstieg

In nur 3 Tagen lernen Sie, wie man mit ASP.NET Core und den Technologien MVC, Entity Framework, WebAPI und Razor professionelle Web-Anwendungs-Architekturen aufbaut. Diese Schulung ist der perfekte Einstieg, um datengetriebene und präsentations-orientierte Applikationen auf Basis der ASP.NET Core Plattform zu erstellen.

/// <summary>
    /// Determines whether the specified URL is in a valid format.
    /// </summary>
    /// <param name="Url">URL to validate.</param>
    /// <returns><c>True</c> if the URL is formatted correctly, otherwise <c>False</c>.</returns>
    /// <remarks></remarks>
    public static bool IsUrl(String Url)
    {
      return Regex.IsMatch(Url, @"((https?|ftp|gopher|telnet|file|notes|ms-help):((//)|(\\\\))+[\w\d:#@%/;$()~_?\+-=\\\.&]*)");
    }
Abgelegt unter URL, Web, Validierung.

3 Kommentare zum Snippet

stef schrieb am 23.02.2016:
cooles snippet.
wieso aber werden folgende als gültig betrachtet??:

http://ww.web.de
http://wwwweb.de

und warum sind diese ungültig???:

HTTPS://www.web.de
www.Web.de
HTTP://www.irgendwas.com
Dirk Klimke schrieb am 23.02.2016:
Hallo stef,

ja da hast du sicherlich Recht. Allerdings suchte ich damals vermutlich nur eine schnelle Implementierung um einen URI zu validieren. Keine Internetadresse mit www. Heute würde ich Uri.IsWellFormedUriString (... (ich meine so heißt sie heute) verwenden. Wenn man einen RFC konformen Ausdruck haben möchte müsste man etwas mehr Gehirnschmalz investieren denke ich. Case Insensitivity über die RegexOptions.IgnoreCase (oder so) oder (?i) oder /ig... Ich denke dieses Snippet ist aufgrund der vorhandenen Implementierung in der Uri Klasse obsolet.
Koopakiller schrieb am 23.02.2016:
Aus irgend einem Grund wurde mein Kommentar verschluckt...was ich in etwa schon mal geschrieben habe:

Die im Snippet zu sehenden Protokolle sind sicherlich noch mit die gebräuchlichsten, aber bei weitem nicht vollständig. Auch kann man selbst Protokolle festlegen, was eine viel allgemeinere Lösung nötig macht. Daher ist Dirks Verweis auf Uri.IsWellFormedUriString vollkommen richtig.

Was deine ersten 2 Beispiele angeht @stef, warum sollten das keine gültigen URLs sein? ww ist einfach eine Subdomain von web.de und wwwweb.de ist einfach die komplette Domain. Da gibt es keinen Fehler.
 

Logge dich ein, um hier zu kommentieren!