Ralph: RegExp - Einfache Zeichen überprüfen

Hallo,

ich möchte wenn eine Variable auf seine Zeichen untersuchen.

Wenn die Variable andere Zeichen enthält außer: a-z, Minus, Unterstrich
  darf nichts geschehen.

Kann mir jemand verraten wie die if-Abfrage wäre und der dazugehörige Ausdruck?

Ich bin momentan bei: if (preg_match('/[a-z_-]/', $var))

Grüße, Ralph

  1. Tag Ralph.

    Ich bin momentan bei: if (preg_match('/[a-z_-]/', $var))

    Ergänze das Ganze noch um die Anker für Zeilenanfang und -ende sowie einen geeigneten Quantifier, dann sollte es gehen.

    Siechfred

    1. Hi

      Ergänze das Ganze noch um die Anker für Zeilenanfang und -ende sowie einen geeigneten Quantifier, dann sollte es gehen.

      Wenn ich ihn so gestalte läuft meine Bedingung nicht: preg_match('/[1]+/', $var)

      Bitte sag mir wie der Hase läuft : )

      Grüße, Ralph


      1. a-z_- ↩︎

      1. /[1]+$/

        ...so gehts nun, danke!


        1. a-z_- ↩︎

        1. Hallo Ralph,

          /[1]+$/
          ...so gehts nun, danke!

          evtl. könnte es sogar schneller sein, wenn du prüfst ob in einer Zeiche ein Zeichen _außer_ dem gewünschten Bereich vorkommt:
          /[^a-z_\-]/)
          Die Bedingung muss dann natürlich negiert werden: if(!preg_match...

          Ob diese Variante performanter ist hängt aber mitunter davon ab, wie deine Dateien zusammengesetzt sind.

          Gruß,
          Benne

          --
          ie:% fl:( br:> va:) ls:> fo:| rl:° ss:) de:[ js:| ch:| mo:} zu:)

          1. a-z_- ↩︎