String mit RegEx durchsuchen

OP #7364036
Lesenswert?
• ▲
▼

Ich möchte einen String mit RegEx durchsuchen. Hier möchte ich z.B. beim String: "wecker 80%"

...den String "80" extrahieren. Dafür hätte ich nun diesen Code verwendet: .([0-9]{1,3})%.

Die {1,3} verwende ich, da der Wert zw. 0 und 100 sein kann. Ich erhalte aber immer nur die letzte Zahl (die 0) zurück. Kann mir jemand sagen wie ich dem Regex mitteilen kann, dass ich den maximal möglichen String (die 80) erhalten möchte, und nicht den kleinsten (die 0)?

Verwenden möchte ich den Code für Javascript.

OP #7364061
Lesenswert?
• ▲
▼

Ich hatte das ganze auf dieser Seite hier getestet: https://regex101.com/

Nun habe ich das selbe auf einer anderen Seite probiert und da wird es mir so ausgegeben, wie ich es erwartet hätte: https://www.w3schools.com/jsref/tryit.asp?filename=tryjsref_regexp

Ich bekomme dort alse den maximalen String zurück. Wenn ich das ganze nun in meinen Code implementiere, wir mir ebenfalls der maximale String wiedergegeben. Warum auch immer, aber an der RexEx-Suche scheint es wohl nicht gelegen zu haben. Mein Problem ist nun aber weg :)

#7364167
Lesenswert?
• ▲
▼

Hans W. schrieb:

Ich möchte einen String mit RegEx durchsuchen. Hier möchte ich z.B. beim String: "wecker 80%"

...den String "80" extrahieren. Dafür hätte ich nun diesen Code verwendet: .([0-9]{1,3})%.

Die {1,3} verwende ich, da der Wert zw. 0 und 100 sein kann. Ich erhalte aber immer nur die letzte Zahl (die 0) zurück.

Greedy Matching mit ? ausschalten, sonst frißt Dein anfängliches .* alle Ziffern vor der letzten ({1,) vor dem % -- ".*? ([0-9]+)%" sollte gehen.

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.