AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

RegExpr - Unrecognized Modifier

Ein Thema von chuckySTAR · begonnen am 11. Aug 2008 · letzter Beitrag vom 11. Aug 2008
Antwort Antwort
chuckySTAR

Registriert seit: 15. Aug 2007
12 Beiträge
 
#1

RegExpr - Unrecognized Modifier

  Alt 11. Aug 2008, 00:54
Hey,
Ich habe ein Problem mit der RegExpr Komponente von http://www.regexpstudio.com/ ( ist das nicht auch die einzige gute die es für Delphi gibt? )
Un zwar bekomme ich den Error "TRegExpr(comp): Unrecognized Modifier (pos 12)"
regex.Expression := '(?:\[([^\]]+))'; pos 12 wäre dann ja das Plus Zeichen, aber warum ist das ein Problem ?

Ich hoffe ihr könnt mir helfen
  Mit Zitat antworten Zitat
omata

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

Re: RegExpr - Unrecognized Modifier

  Alt 11. Aug 2008, 01:09
Du solltest lieber erzählen, was du da eigentlich genau machen willst. Warum sollen wir dir den Mond erklären, wenn du zum Mars fliegst?!
  Mit Zitat antworten Zitat
chuckySTAR

Registriert seit: 15. Aug 2007
12 Beiträge
 
#3

Re: RegExpr - Unrecognized Modifier

  Alt 11. Aug 2008, 01:17
Achso ja =)
Ich will aus einer Log Zeile den Plugin Namen extrahieren.
Sieht so aus:
L 08/09/2008 - 00:03:00: [std_admin_color_chat.amxx] ...

Delphi-Quellcode:
ReadLn(logfile, log);
regex := TRegExpr.Create;
try
  regex.Expression := '(?:\[([^\]]+))';
  if regex.Exec (log) then
    plugin := regex.Match[0];
finally
  regex.Free;
end;
  Mit Zitat antworten Zitat
omata

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

Re: RegExpr - Unrecognized Modifier

  Alt 11. Aug 2008, 01:21
Versuch es doch mal so...

Delphi-Quellcode:
ReadLn(logfile, log);
RegEx := TRegExpr.Create;
try
  RegEx.Expression := '\[(.*)\]';
  if RegEx.Exec(log) then
    plugin := RegEx.Match[1];
finally
  RegEx.Free;
end;
  Mit Zitat antworten Zitat
chuckySTAR

Registriert seit: 15. Aug 2007
12 Beiträge
 
#5

Re: RegExpr - Unrecognized Modifier

  Alt 11. Aug 2008, 01:28
Ahh es klappt danke.
Aber warum wollte er nicht meine Regex nehmen ?
plugin := RegEx.Match[0]; // es ist doch 0 nicht 1 Kannst du mir noch eben sagen, wie der RegEx Befehel war, dass er nicht "hungrig" ist? Da öfters sowas drinnen steht:
Name vom Plugin ... [bla]
  Mit Zitat antworten Zitat
omata

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

Re: RegExpr - Unrecognized Modifier

  Alt 11. Aug 2008, 01:31
Doch es ist [1] und nicht [0]!

[0] = alles, also mit den Klammern
[1] = alles innerhalb der Klammern

Gierig: RegExpr.ModifierG:=true;
  Mit Zitat antworten Zitat
chuckySTAR

Registriert seit: 15. Aug 2007
12 Beiträge
 
#7

Re: RegExpr - Unrecognized Modifier

  Alt 11. Aug 2008, 01:34
Ah stimmt ^^
Danke, echt top! So schnelle Antworten! Find ich echt super!
Das mit dem gierig sein habe ich eben auch noch gefunden, nur ein bisschen anders
regex.Expression := '\[(.+?)\]'; Einfach das Fragezeichen hinzu

Danke noch einmal :p
  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 12:53 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