Regulärer Ausdruck

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

  • Regulärer Ausdruck

    Guten morgen,

    irgendwie stehe ich heute auf dem Schlauch. Ich versuche per preg_match zu überprüfen ob in einer Zeichenkette nur maximal die folgenden Zeichen jeweils maximal einmal vorkommen: "TPFM/"
    Die Buchstaben sind ja nicht das Problem, aber das "/" bekomm ich nicht hin. Vielleicht kann mir einer von euch mal auf die Sprünge helfen. Danke schon einmal.

  • #2
    Du musst das Zeichen evtl. escapen:
    Code:
    preg_match ( '..\/..', $var );
    Die Regeln | rtfm | register_globals | strings | SQL-Injections | [COLOR=silver][[/COLOR][COLOR=royalblue]–[/COLOR][COLOR=silver]][/COLOR]

    Kommentar


    • #3
      Ja das dachte ich auch, aber das funzt leider net, bekomme folgende meldung: "Delimiter must not be alphanumeric or backslash in"

      Kommentar


      • #4
        Poste mal den Codeausschnitt vom preg_match

        Gruss

        tobi
        Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

        [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
        Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

        Kommentar


        • #5
          Verdammt, falsches reinkopiert, hier das geänderte:

          PHP-Code:
          $data 'T/P';
          $preg '/TPFM\\//';
          if (!
          preg_match($preg$data)) { ... 
          Zuletzt geändert von schilke; 23.03.2007, 09:03.

          Kommentar


          • #6
            Ich möchte noch hinzufügen dass obiger Code keinen Fehler produziert , mir aber ein false zurückliefert, aber warum? Was mache ich falsch.

            Kommentar


            • #7
              Code:
               if (!preg_match('/^[TPFM\/]?$/'', 'T/P')) { ...
              EDIT:
              wenn der delimiter kein problem ist solltest du das hier mal testen -> wenn du einfach nur dich zeichen schreibst wird das als normaler (zusammenhängender) string gewertet
              EDIT:
              noch anfang und ende hinzugefügt ...
              Zuletzt geändert von tontechniker; 23.03.2007, 09:13.
              Die Regeln | rtfm | register_globals | strings | SQL-Injections | [COLOR=silver][[/COLOR][COLOR=royalblue]–[/COLOR][COLOR=silver]][/COLOR]

              Kommentar


              • #8
                Super, funktionert, danke an den tontechniker

                Kommentar


                • #9
                  Original geschrieben von schilke
                  Super, funktionert, danke an den tontechniker
                  echt?
                  jeweils maximal einmal vorkommen - das dürfte nicht zutreffen ...

                  außerdem wirft $/'' einen parse-error. aber wenn bei dir alles ok ist, möchte ich nichts gesagt haben

                  Kommentar

                  Lädt...
                  X