baeckerman83: Leerzeichen in Regulärenausdrücken?

Hi!
Ich habe einen Text:
abcde.?.?.fghij

Wobei die Punkte genau ein Leerzeichen sind und die Fragezeichen sind manchmal Fragezeichen und manchmal Zahlen.
Wie finde ich jetzt das mit einem Regularenausdruck?
Ich habe es so versucht:
/abcde\s.\s.\sfghij/

Aber das liefert gar keinen Rückgabewert.
Mit

/abcde.....fghij/

findet er zu viel.

  1. Hello,

    Hi!
    Ich habe einen Text:
    abcde.?.?.fghij

    Wobei die Punkte genau ein Leerzeichen sind und die Fragezeichen sind manchmal Fragezeichen und manchmal Zahlen.

    Leerzeichen bleiben Leerzeichen.
    Manchmal Fragezeichen und manchmal eine Ziffer wäre

    ~abcde [?d] [?d] fghij~

    Manchmal ein Faragezeichen und manchmal eine Zahl ist dann schon etwas schwieriger

    ~abcde (?|d+) (?|d+) fghij~          // hoffentlich stimmt es

    Und wenn die Zahl auch noch negativ sein darf

    ~abcde (?|-?d+) (?|-?d+) fghij~          // hoffentlich stimmt es

    Liebe Grüße aus Syburg bei Dortmund

    Tom vom Berg

    --
    Nur selber lernen macht schlau
    http://bergpost.annerschbarrich.de
    1. Hi!
      Danke schön!
      Dachte Leerzeichen sind auch was bestimmtes. Es sind nur Ziffern. Dann ist es gut.

    2. @@Tom:

      Leerzeichen bleiben Leerzeichen.

      Bis hierhin stimmt’s noch.

      Manchmal Fragezeichen und manchmal eine Ziffer wäre
          ~abcde [?d] [?d] fghij~

      Nö. d bleibt d. \d steht für eine Ziffer. Also:
              adcde [?\d] [?\d] fghij

      Oder in Analogie zu den nachfolgenden Beispielen
              adcde (?:?|\d) (?:?|\d) fghij

      Manchmal ein Faragezeichen und manchmal eine Zahl ist dann schon etwas schwieriger
          ~abcde (?|d+) (?|d+) fghij~          // hoffentlich stimmt es

      Bis auf das fehlende '', sofern du mit einer „Zahl“ eine natürliche meinst. Ansonsten wird es wirklich schon etwas schwieriger: dann müssten auch Vorzeichen, maximal ein Dezimaltrennzeichen, optional auch ein 'E' gefolgt von einer Ganzzahl mit optionalen Vorzeichen zugelassen werden. Von Hexadezimalzahlen will ich an dieser Stelle schweigen.

      Und wenn die Zahl auch noch negativ sein darf
          ~abcde (?|-?d+) (?|-?d+) fghij~          // hoffentlich stimmt es

      Warum lässt du nicht auch '+' als Vorzeichen zu?
              abcde (?:?|[+-]?\d+) (?:?|[+-]?\d+) fghij

      Live long and prosper,
      Gunnar

      --
      Erwebsregel 208: Manchmal ist das einzige, was gefährlicher als eine Frage ist, eine Antwort.
      1. Hello,

        Nö. d bleibt d. \d steht für eine Ziffer. Also:
                adcde [?\d] [?\d] fghij

        Danke für die Korrektur.

        Warum lässt du nicht auch '+' als Vorzeichen zu?
                abcde (?:?|[+-]?\d+) (?:?|[+-]?\d+) fghij

        Ja, das ist eine gute Frage. Es wird üblicherweise aber nicht geschrieben.

        Liebe Grüße aus Syburg bei Dortmund

        Tom vom Berg

        --
        Nur selber lernen macht schlau
        http://bergpost.annerschbarrich.de