Powl: regular expressions

Hallo,

Ich muß zugeben, regex machen micht total kirre.
Ich suche einen Ausdruck, der wahr ist, wenn mindestens 10 Zeichen a-zA-Z0-9_ mit beliebigen Leerzeichen im Ausdruck vorkommen.

preg_match("/\w{10,}/s", $_POST['text']))

funktioniert nicht wie erhofft, und ich bin mit meinem Latein am Ende. Durch das Tutorial bei PHPnet steige ich ehrlich nicht durch.

Vielleicht kann jemand erklären wie der Ausdruck lauten müßte?

Danke

netten Abend
da^Powl

  1. Hallo Powl.

    Ich suche einen Ausdruck, der wahr ist, wenn mindestens 10 Zeichen a-zA-Z0-9_ mit beliebigen Leerzeichen im Ausdruck vorkommen.

    Was heißt „beliebige Leerzeichen“?

    preg_match("/\w{10,}/s", $_POST['text']))

    Also mindestens 10 Wortzeichen.

    funktioniert nicht wie erhofft, und ich bin mit meinem Latein am Ende. Durch das Tutorial bei PHPnet steige ich ehrlich nicht durch.

    Vielleicht kann jemand erklären wie der Ausdruck lauten müßte?

    Du suchst nach einer Zeichenklasse. (Die verlinkte Seite bietet ein meiner Meinung nach großartiges Tutorial zu reglären Ausdrücken.)

    Einen schönen Donnerstag noch.

    Gruß, Ashura

    --
    sh:( fo:} ch:? rl:( br: n4:~ ie:{ mo:| va:) de:> zu:} fl:( ss:) ls:[ js:|
    „It is required that HTML be a common language between all platforms. This implies no device-specific markup, or anything which requires control over fonts or colors, for example. This is in keeping with the SGML ideal.“
    [HTML Design Constraints: Logical Markup]
    1. Hallo Ashura,

      ... (Die verlinkte Seite bietet ein meiner Meinung nach großartiges Tutorial zu reglären Ausdrücken.)

      Das kann ich unterschreiben. Die Möglichkeit eigene RegEx direkt online auf strings zu testen und direkt die Matches zu erkennen ist extrem hilfreich!

      Danke für den Link - to da bookmarks it's gone.

      netten Tag
      da^Powl

  2. gudn tach!

    Ich suche einen Ausdruck, der wahr ist, wenn mindestens 10 Zeichen a-zA-Z0-9_ mit beliebigen Leerzeichen im Ausdruck vorkommen.

    preg_match("/\w{10,}/s", $_POST['text']))

    \w ist locale-abhaengig, wenn du also wirklich nur nach [a-zA-Z0-9_ ] suchst, ist es also durchaus ok, das auch explizit so anzugeben.
    den s-modifier brauchst du hier uebrigens nicht.

    also:
    preg_match("/[a-zA-Z0-9_ ]{10,}/", $_POST['text']));
    liefert z.b. bei "yrvpug cnenabvq?" einen positiven wert.

    Durch das Tutorial bei PHPnet steige ich ehrlich nicht durch.

    welches?

    prost
    seth