Seite 1 von 1

QRegExp

Verfasst: 12. Februar 2009 13:13
von CaptnChaos
Hallo!
Ich habe ein Problem mit QRegExp.
Folgenden Text möchte ich Filtern:
Divide clock by 8 internally; [CKDIV8=0]
Ext. Clock; Start-up time PWRDWN/RESET: 6 CK/14 CK + 0 ms; [CKSEL=0000 SUT=00]
Und zwar nach
[CKSEL=0000 SUT=00]
bzw
[CKDIV8=0]
Dafür habe ich mir diesen RegExp zurechtgemacht:

Code: Alles auswählen

(\w+=\d+)
Das funktioniert auch so weit, solange ich nur eine zuweisung mit '=' habe. Kommt eine Zweite dazu wird diese nicht erkannt. (Also CKSEL=0000 wird erkannt, nicht aber SUT=00).
Zusätzlich wärs noch schön, wenn der RegExp mir die Ergebnisse direkt aufteilt, in den String und die Zahlenfolge.

Verfasst: 12. Februar 2009 23:04
von upsala
Mit

Code: Alles auswählen

(\w+)=(\d+)
bekommst du getrennte Ergebnisse. Sollten weitere Treffer in der zeile sein, ist in der RegEx-Doku beschrieben, wie man weitersucht.

Verfasst: 13. Februar 2009 07:43
von CaptnChaos
Ja. Ich wollte die Schleife vermeiden und hatte gehofft das man mit einer anderen regexp erreicht, dass alle Ergebnisse per cap(int index) abrufen kann..

Verfasst: 13. Februar 2009 09:05
von upsala
Wenn du weist wieviele Treffer du max. erwartest könntest du deine RegEx entsprechend erweitern.