Hans Gustav: ereg

Hi,

wie kann ich folgenden string "durchgehen" lassen:

$string = 'abc ABC 01239';

mit dieser abfrage

if (ereg ("[1]*$",$Fstring))

geht es leider nicht. wie kann ich die leerzeichen erlauben?

MfG
Hans Gustav


  1. a-zA-Z0-9- ↩︎

  1. Hi,

    if (ereg ("[1]*$",$Fstring))
    geht es leider nicht. wie kann ich die leerzeichen erlauben?

    benutze lieber preg_match, geht glaube ich schneller und wegen der Leerzeichen musst du hier mal schauen:
    http://de3.php.net/manual/de/pcre.pattern.syntax.php
    dort gibt es auf jeden Fall einen Ausdruck dafür

    ciao
    romy


    1. a-zA-Z0-9- ↩︎

    1. oder Einfach Kompliziert:

      $Fstring = "ABC abc 01239";

      $StringArr = explode(" ",$Fstring);
      for ($i=0; $i <= count($StringArr)-1; $i++)
      {
       $StringPart = $StringArr[$i];
       if (ereg ("[1]+$",$StringPart))
       {
        (...)
       }
      }

      geht!!


      1. a-zA-Z0-9- ↩︎

      1. Hi

        Du wolltest also die Leerzeichen einfach nur ignorieren, dazu hilft der modifier x

        und ansonten wäre \s der richtige Weg gewesen.

        Aber viele Wege führen nach Rom

        ciao
        romy

        1. hi,

          Du wolltest also die Leerzeichen einfach nur ignorieren, dazu hilft der modifier x

          und ansonten wäre \s der richtige Weg gewesen.

          also
           if (ereg ("[1]x$",$StringPart))
                                   ^
          oder
           if (ereg ("[2]\s$",$StringPart))
                                   ^^

          oder wie ?

          Hans Gustav


          1. a-zA-Z0-9- ↩︎

          2. a-zA-Z0-9- ↩︎

          1. Hi,

            Du wolltest also die Leerzeichen einfach nur ignorieren, dazu hilft der modifier x
            und ansonten wäre \s der richtige Weg gewesen.

            also
             if (ereg ("[1]x$",$StringPart))

            nein
             "![2]$!x"  
            die Ausrufezeichen sind begrenzungszeichen, da kannst Du nehmen was Du willst, die Modifier stehen immer alle danach

            oder
             if (ereg ("[3]\s$",$StringPart))

            auch nicht
            "[4]$"
            das \s ist eine Zeichenkette, die das Leerzeichen ausdrückt und gehört somit in den Block, der die erlaubten Zeichen enthält

            ciao
            romy


            1. a-zA-Z0-9- ↩︎

            2. a-zA-Z0-9- ↩︎

            3. a-zA-Z0-9- ↩︎

            4. \sa-zA-Z0-9- ↩︎

            1. achso!

              "[1]$"

              angenommen im string wären auch noch zeilenumbrüche dann so:

              "[2]$"

              MfG
              Hans Gustav

              Danke!


              1. \sa-zA-Z0-9- ↩︎

              2. \s\na-zA-Z0-9- ↩︎

              1. Hi,

                achso!

                "[1]$"

                angenommen im string wären auch noch zeilenumbrüche dann so:

                "[2]$"

                ja, siehe http://de.php.net/manual/de/pcre.pattern.syntax.php
                da gibt es auch noch \t und viele mehr

                ich würde Dir trotzdem noch raten, preg_match zu verwenden und nicht ereg. Dazu findest Du auf den eben verlinkten Seiten auch etwas.

                ciao
                romy


                1. \sa-zA-Z0-9- ↩︎

                2. \s\na-zA-Z0-9- ↩︎