AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi RegEx Extrahierung diverser Teile aus einem String
Thema durchsuchen
Ansicht
Themen-Optionen

RegEx Extrahierung diverser Teile aus einem String

Ein Thema von stOrM · begonnen am 6. Jun 2009 · letzter Beitrag vom 6. Jun 2009
Antwort Antwort
Benutzerbild von stOrM
stOrM

Registriert seit: 7. Jun 2003
Ort: Mülheim an der Ruhr
436 Beiträge
 
Delphi 10.3 Rio
 
#1

RegEx Extrahierung diverser Teile aus einem String

  Alt 6. Jun 2009, 08:09
Hi,
also mit dem Syntax von RegEx komm ich ja mal gar nicht klar...
Ich hab folgendes Problem und zwar würde ich gerne die Ausgabe von DCC32 parsen, hierbei interessien mich die Teile:

Unitname, Zeile, ggf. Fehlermeldung hierbei ist natürlich dann die Zeile, der Fehlertyp sowie die eigentliche Fehlermeldung für mich interessant...

Vermutlich kann man das ganze auch über nen simples pos(...) lösen, was ich zur Zeit noch mache, dennoch würde mich interessieren ob und wie man das ggf. mit nem RegEx machen könnte, da man dies sicherlich öfters irgendwo gebrauchen bzw Anwenden könnte, dürfte vermutlich auch noch wesentlich effizienter sein wenn mans mal kapiert hat...

Beispiel der Ausgabe von DCC32 bei der Kompilierung eines Projektes wo ich mit Absicht Fehler eingebaut habe...

C:\Pain.pas(7)
C:\Pain.pas(7)
C:\Pain.pas(9)
C:\Pain.pas(163) Fehler: E2003 Undeklarierter Bezeichner: 'qwertzuiop'
C:\Pain.pas(164) Fehler: E2066 Operator oder Semikolon fehlt
C:\Pain.pas(164) Fehler: E2014 Anweisung erforderlich, aber Ausdruck vom Typ 'Boolean' gefunden
C:\Pain.pas(168)
C:\VistaPain.dpr(5) Schwerwiegend: F2063 Verwendete Unit 'PaintVistaGradient.pas' kann nicht compiliert werden

Was jetzt interessant wäre für mich bei obiger Ausgabe z.B.
Wenn die Kompilierung gestartet wurde, das ich in meiner GUI dann nach RegEx eine Ausgabe aufbauen kann die Folgendes enthält:

Name der Unit: Pain.pas Zeile: 7
Name der Unit: Pain.pas Zeile: 9

Fehler: Pain.pas Zeile: 163 FehlerCode: E2003 Fehlermeldung: Undeklarierter Bezeichner: 'qwertzuiop'

So in der art halt, nur wie gesagt der Syntax von RegEx ist mehr als verwirrend für mich, ich finde da nicht wirklich den Zugang zu bisher... Ggf. hat jemand damit Erfahrung und könnte mir da mal auf die Sprünge helfen...

Gruss
s!
  Mit Zitat antworten Zitat
omata

Registriert seit: 26. Aug 2004
Ort: Nebel auf Amrum
3.154 Beiträge
 
Delphi 7 Enterprise
 
#2

Re: RegEx Extrahierung diverser Teile aus einem String

  Alt 6. Jun 2009, 16:46
Zitat von stOrM:
...also mit dem Syntax von RegEx komm ich ja mal gar nicht klar...
Schade, ist wirklich interessant und wichtig zu wissen.

Vielleicht hilft dir der Anhang ja weiter...
Angehängte Dateien
Dateityp: zip dcc32scan_206.zip (35,6 KB, 29x aufgerufen)
  Mit Zitat antworten Zitat
nat

Registriert seit: 10. Nov 2005
216 Beiträge
 
RAD-Studio 2009 Pro
 
#3

Re: RegEx Extrahierung diverser Teile aus einem String

  Alt 6. Jun 2009, 18:30
Code:
^(.*)\((\d)+\)(.*)$
sollte die teile problemlos zerlegen.
wichtig noch:
Delphi-Quellcode:
ModifierM := true;
ModifierS := false;
besorg dir ne gute, übersichtliche doku von den regex. wenn du dann sowas erstellen willst, näher dich schritt für schritt.
ein programm zum erstellen und testen ist auch recht hilfreich (jedesma neu kompilieren kann doch recht nervig werden).
  Mit Zitat antworten Zitat
Benutzerbild von stOrM
stOrM

Registriert seit: 7. Jun 2003
Ort: Mülheim an der Ruhr
436 Beiträge
 
Delphi 10.3 Rio
 
#4

Re: RegEx Extrahierung diverser Teile aus einem String

  Alt 6. Jun 2009, 18:58
Hi,

@Omata optimal, ich werd mir dein Demo mal verinnerlichen das war mehr als ich erwartet hab vielen Dank...
@Nat ebenfalls vielen Dank!

Gruss
s!
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:33 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz