tutorials.de Buch-Aktion 02/2012
Seite 1 von 2 12 LetzteLetzte
ERLEDIGT
JA
ANTWORTEN
16
ZUGRIFFE
1249
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Avatar von Online-Skater
    Online-Skater Online-Skater ist offline Mitglied Brillant
    Registriert seit
    Sep 2004
    Ort
    Rostock
    Beiträge
    891
    So ich habe mich mal etwas ausfühlicher mit Regular Expressions beschäftigt und bin der Meinung: tolle Sache

    Und da ich auch mal in der Suche nachgeschaut habe wäre ich dafür Dieses Thema auch im PHP-FAQ Bereich aufzunehmen damit sich jeder darüber informieren kann

    gute Links wären: hier
    und da
    natürlich auch hier



    So aber selbst danach konnte ich folgendes nicht lösen eine URL-Prüfung, die bekanntlich ja mit www. und auch ohne gültig ist.

    Mein Versuch:
    PHP-Code:
    $url "http://wwwwwww.google-rostock.de";
    $url_flag preg_match("/^http:\/\/(w{3}\.)?[a-z0-9]+([-_\.]?[a-z0-9])+\.[a-z]{2,4}$/i",$url);
    echo 
    "Url-Test: $url_flag <br>"
    Ergebnis: 1

    Habe schon viel versucht ich brauche die Bedingung: Entweder www. oder nicht oben scheitert es daran das der Operator ? keinmal oder einmal
    Eigentlich das was ich suche aber selbst mehr oder weniger als 3*w gehn durch
    Ich weis woran es liegt aber nicht wie das zu ändern ist *heul*

    Thx 4 help.
     

  2. #2
    Avatar von Online-Skater
    Online-Skater Online-Skater ist offline Mitglied Brillant
    Registriert seit
    Sep 2004
    Ort
    Rostock
    Beiträge
    891
    So nach ein bichen rumprobieren hab ich es teilweise geschafft.

    PHP-Code:
    $url_flag preg_match("!^http:\/\/((w{3}\.){1}|[a-z0-9]+)([-_]?[a-z0-9])+\.[a-z]{2,4}$!i",$url); 
    es geht nun alles bis auf http://www.homepage.test.de
    Sprich es dürfen nur max. 2 Punkte enthalten sein bei www. sofern vorhanden und beim Schluss .de z.B. Denn wenn ich innerhalb der domäne Punkte erlaube funktioniert das ganze nicht mehr.
     

  3. #3
    Registriert seit
    Dec 2001
    Ort
    Bayern
    Beiträge
    5.774
    Blog-Einträge
    5
    Hallo,

    PHP-Code:
    <?php

    $tests 
    = array(
        
    'http://www.tutorials.de/',
        
    'http://www.tutorials.de',
        
    'http://tutorials.de/',
        
    'http://i.loveruby.net/',
        
    'http://de/',
        
    'http://.de/',
        
    'http://abc.de/',
        
    'http://abc..de/',
        
    'http://abc§.de/',
        
    'http://germanisches.national.museum/',
        
    'http://www3.in.tum.de/',
        
    'http://3.141592653589793238462643383279502884197169399375105820974944592.com/',
    );

    $regex '~^http://([a-z0-9]+\.)+[a-z]{2,6}/?$~i';

    foreach (
    $tests as $test) {
        if (
    preg_match($regex$test)) {
            echo 
    '[VALID] ';
        } else {
            echo 
    '[ERROR] ';
        }
        echo 
    $test."\n";
    }

    ?>
    Grüße,
    Matthias

    PS: Ich splitte das mal in ein neues Thema auf, hat ja mit der ursprünglichen Frage nur noch wenig zu tun.
     
    „Gib einem Menschen einen Fisch, und er wird für einen Tag satt. Lehre ihn Fischen, und er wird ein Leben lang satt.“
    “For every complex problem, there is an answer that is short, simple and wrong.”
    “Pessimism is safe, but optimism is a lot faster!”


    Aktuelles Coding Quiz: #17 - Wörter kreuz und quer

  4. #4
    Avatar von Online-Skater
    Online-Skater Online-Skater ist offline Mitglied Brillant
    Registriert seit
    Sep 2004
    Ort
    Rostock
    Beiträge
    891
    Vielen Dank erstmal für die Hilfe ich staunte nicht schlecht als ich den kurzen Ausdruck sah aber die Sache hat noch einen Haken und zwar das angesprochene wwww. oder ww.

    Abgesehn davon is die Lösung elegant und kurz.
     

  5. #5
    Registriert seit
    Dec 2001
    Ort
    Bayern
    Beiträge
    5.774
    Blog-Einträge
    5
    Hallo,

    wozu soll die Überprüfung auf www. denn gut sein?

    Grüße,
    Matthias
     
    „Gib einem Menschen einen Fisch, und er wird für einen Tag satt. Lehre ihn Fischen, und er wird ein Leben lang satt.“
    “For every complex problem, there is an answer that is short, simple and wrong.”
    “Pessimism is safe, but optimism is a lot faster!”


    Aktuelles Coding Quiz: #17 - Wörter kreuz und quer

  6. #6
    Avatar von Online-Skater
    Online-Skater Online-Skater ist offline Mitglied Brillant
    Registriert seit
    Sep 2004
    Ort
    Rostock
    Beiträge
    891
    Der Sinn des ganzen ist ja syntaktisch falsche URL-Adressen abzufangen
    Und wenn der Herr User eine falsche Url einträgt dann soll Sie nicht gespeichert werden.
    Denn in der Ausgabe wird sie anklickbar sein und man möchte ja nur ungerne tote Links haben !?
     

  7. #7
    Registriert seit
    Dec 2001
    Ort
    Bayern
    Beiträge
    5.774
    Blog-Einträge
    5
    Hallo,

    was ist denn an einem Hostnamen, der nicht mit www. anfängt, syntaktisch falsch?

    Grüße,
    Matthias
     
    „Gib einem Menschen einen Fisch, und er wird für einen Tag satt. Lehre ihn Fischen, und er wird ein Leben lang satt.“
    “For every complex problem, there is an answer that is short, simple and wrong.”
    “Pessimism is safe, but optimism is a lot faster!”


    Aktuelles Coding Quiz: #17 - Wörter kreuz und quer

  8. #8
    Avatar von Online-Skater
    Online-Skater Online-Skater ist offline Mitglied Brillant
    Registriert seit
    Sep 2004
    Ort
    Rostock
    Beiträge
    891
    Ich glaub wir reden aneinander vorbei
    Da ist absolut nix dran falsch, es geht darum:

    HTML-Code:
    http://wwww.tutorials.de   // mehr als 3w
    http://ww.tutorials.de        //weniger als 3w   
    Diese Dinge laufen bei deinem Pattern durch
     

  9. #9
    Registriert seit
    Sep 2003
    Ort
    Fürth(Franken)
    Beiträge
    1.060
    Blog-Einträge
    3
    Was hast du denn gegen Subdomains?

    greetz
    daddz
     
    be inspired...simplify...

  10. #10
    Registriert seit
    Dec 2001
    Ort
    Bayern
    Beiträge
    5.774
    Blog-Einträge
    5
    Hallo,

    Zitat Zitat von Online-Skater
    HTML-Code:
    http://wwww.tutorials.de   // mehr als 3w
    http://ww.tutorials.de        //weniger als 3w   
    Diese Dinge laufen bei deinem Pattern durch
    Und warum sollten sie nicht durchlaufen?

    Grüße,
    Matthias
     
    „Gib einem Menschen einen Fisch, und er wird für einen Tag satt. Lehre ihn Fischen, und er wird ein Leben lang satt.“
    “For every complex problem, there is an answer that is short, simple and wrong.”
    “Pessimism is safe, but optimism is a lot faster!”


    Aktuelles Coding Quiz: #17 - Wörter kreuz und quer

  11. #11
    Avatar von Online-Skater
    Online-Skater Online-Skater ist offline Mitglied Brillant
    Registriert seit
    Sep 2004
    Ort
    Rostock
    Beiträge
    891
    Sry Ich komm mir bischen verarscht vor irgendwie
    Weil diese Adressen nicht gehen ? Oder vervollständigt dein Browser sowas ?
    Genau genommen sind sie nicht valide.
     

  12. #12
    Registriert seit
    Dec 2002
    Ort
    Trier
    Beiträge
    17.502
    Blog-Einträge
    10
    Was genau macht sie denn invalide? Etwa die zwei beziehungsweise vier statt von dir erwarteten drei Ws als Subdomain?
     
    Markus Wulftange

  13. #13
    Avatar von Online-Skater
    Online-Skater Online-Skater ist offline Mitglied Brillant
    Registriert seit
    Sep 2004
    Ort
    Rostock
    Beiträge
    891
    Ist es denn nicht so ? Dann klärt mich auf.
    Ich habe gesehen bei Matthias das es www3. gibt wieviele Arten gibt es denn ?
    Ich bin davon ausgegangen das entweder www. oder gleich domain.
     

  14. #14
    Registriert seit
    Dec 2002
    Ort
    Trier
    Beiträge
    17.502
    Blog-Einträge
    10
    Als Subdomain sind prinzipiell alle Bezeichnungen möglich, die deine Fantasie und die Spezifikation für Hostnamen (siehe RFC 3986) erlauben.
     
    Markus Wulftange

  15. #15
    Registriert seit
    Dec 2001
    Ort
    Bayern
    Beiträge
    5.774
    Blog-Einträge
    5
    Hallo,

    der Domain-Anteil (im Sinne von Second-Level-Domain) eines Hostnamens besteht nur aus name.tld, also bspw. tutorials.de, wikipedia.org, w3.org. Alles andere wird allgemein als Subdomain bezeichnet (de.wikipedia.org, en.wikipedia.org, jigsaw.w3.org, aber eben auch www.tutorials.de). Diese Subdomains können weitestgehend frei gewählt werden. Somit wären auch wwww.tutorials.de oder ww.tutorials.de denkbar und möglich.

    Siehe auch: Domain bei Wikipedia.

    Grüße,
    Matthias
     
    „Gib einem Menschen einen Fisch, und er wird für einen Tag satt. Lehre ihn Fischen, und er wird ein Leben lang satt.“
    “For every complex problem, there is an answer that is short, simple and wrong.”
    “Pessimism is safe, but optimism is a lot faster!”


    Aktuelles Coding Quiz: #17 - Wörter kreuz und quer

Ähnliche Themen

  1. Explode mit regulären Ausdrücken
    Von bauchinj im Forum PHP
    Antworten: 1
    Letzter Beitrag: 07.10.10, 14:28
  2. Frage zu regulären Ausdrücken
    Von Nord-Süd-Richtung im Forum PHP
    Antworten: 5
    Letzter Beitrag: 06.12.09, 11:26
  3. Suche mit Regulären ausdrücken
    Von liquidbeats im Forum PHP
    Antworten: 6
    Letzter Beitrag: 03.07.06, 23:30
  4. Problem mit Regulären Ausdrücken
    Von forsterm im Forum .NET Windows Forms
    Antworten: 4
    Letzter Beitrag: 26.02.06, 00:59
  5. Variablen in Regulären Ausdrücken
    Von MRanderath im Forum Javascript & Ajax
    Antworten: 0
    Letzter Beitrag: 23.08.01, 18:19