Regulärer Ausdruck: URL

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Regulärer Ausdruck: URL

    Hallo an alle.

    Ich habe mir folgenden Ausdruck zusammengebastelt,

    PHP-Code:
    '/http:\/\/[0-9a-z]([-.]?[0-9a-z])*\.[a-z]{2,4}\/?$/' 
    der auch soweit funktioniert solange die URL wie folgt aussieht:

    http://domain.tld
    oder
    http://www.domain.tld

    Ich habe es soweit geschaft das auch ein Slash am Ende erlaubt ist.

    Jedoch wurde ich gerne auch URL's zulassen die wie folgt aussehen:

    http://domain.tld/ordner/datei.html
    oder
    http://domain.tld/?var=bla

    Leider waren meine Versuche bisher erfolglos und googeln bringt mich auch nicht weiter. Jedesmal wenn ich etwas hinten anfüge und ich dann die TLD mehr als 4 Zeichen hat, wird dies trotzdem als richtig angezeigt, obwohl es maximal ja nur 4 sein sollten.

    Hat jemand eine Idee?

    Danke schon mal im Vorraus.
    Wir haben alle mal angefangen!

  • #2
    Jedesmal wenn ich etwas hinten anfüge und ich dann die TLD mehr als 4 Zeichen hat, wird dies trotzdem als richtig angezeigt, obwohl es maximal ja nur 4 sein sollten.
    Abgesehen davon, dass es TLDs mit mehr als 4 Zeichen gibt, liegt dein Problem beim /?, welchen du als optional bezeichnest.

    Fazit: Wenn ein Pfad zu einer Datei angegeben wurde, ist der / obligatorisch. Versuchs mal einzubauen.

    Kommentar


    • #3
      Ich möchte aber auch URL's zulassen die keinen weiteren Pfad haben.
      Wir haben alle mal angefangen!

      Kommentar

      Lädt...
      X