Sonderzeichen erkennen

  • Hiho,
    Ich versuche herauszufinden ob ein bestimmter string sonderzeichen enthält die ein normaler samp benutzername nicht haben darf.
    Also alles ausser

    Code
    abcdefghijklmnopqrstuvwxyz
    ABCDEFGHIJKLMNOPQRSTUVWXYZ
    0123456789
    .
    _


    will ich erkennen und halt verhindern das sich ein Spieler dessen name sonderzeichen enthält einen account erstellt.


    Über google bin ich dann zu ereg gekommen, aber da steht bei das die funktion veraltet und nicht empfehlenswert ist.
    Also was benutze ich da am besten? preg_match? oder einfach strpos bzw strstr ?
    Und wie sieht das ganze dann aus? Vielleicht wäre ja jemand so freundlich und würde mir ein beispiel geben an dem ich mich orientieren kann. Aus denen auf http://www.php.net werd ich nicht so ganz schlau.


    Mfg.

    The fact is, I am right. And if you think I'm wrong, you are wrong.

  • Bei preg brauchst du einen Regulären Ausdruck, in welchen du nur bestimmte zeichen erlaubst, und nur eine bestimmte länge (gibt ja ne maximal länge)
    Villeicht hilft dir das ja weiter http://de.wikipedia.org/wiki/Regul%C3%A4rer_Ausdruck


    //edit: einfacher wär es, wenn du den sting mehrmals mit stripos durchläufst, und nach den verbotenen zeichen suchst
    eleganter ist allerdings die lösung mit preg

    Einmal editiert, zuletzt von noir ()

  • An deinem "www.php.net" erkenne ich, das es sich um PHP handeln soll:



    So würde ich das machen.
    Oder man ersetzt die einfach, dann ist das Problem gelöst ^^

    Miete mich (nicht) :love: