AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi TRegExpr library und GetEnvironmentVariable
Thema durchsuchen
Ansicht
Themen-Optionen

TRegExpr library und GetEnvironmentVariable

Ein Thema von ringli · begonnen am 20. Jun 2005 · letzter Beitrag vom 21. Jun 2005
Antwort Antwort
ringli

Registriert seit: 7. Okt 2004
508 Beiträge
 
Delphi 11 Alexandria
 
#1

TRegExpr library und GetEnvironmentVariable

  Alt 20. Jun 2005, 22:42
Ich bastel schon seit Stunden an einem Problem das ich mit der TRegExpr library habe. Und zwar möchte ich mit dieser Unit in einer Zeichenfolge bestimmte Teile ersetzen. Dazu verwende ich im Moment folgenden Code:
Code:
Edit1.Text := ReplaceRegExpr ('%\w*%' {Suche nach..},
                              '/s /u "%systemroot%\test.txt" "%temp%"' {...in diesem Text},
                              'C:\Windows' {Ersetze die Fundstellen mit diesem Text},
                              False);
Nach dem Durchlauf hat die Unit den Text so verändert:
Code:
/s /u "C:\Windows\test.txt" "C:\Windows"
Soweit ist das alles klar, aber wie bzw. wo muss ich die RegExpr-Unit anpassen damit ich erreiche das die Fundstellen ausgelesen (also z.B. %systemroot% und %temp%) und diese während des Suchdurchlaufes jeweils mit Hilfe von GetEnvironmentVariable übersetzt und in den Text zurückgeschrieben werden?

Ich habe in der RegExpr-Unit schon an den unterschiedlichsten Stellen probehalber ein Showmessage eingesetzt um festzustellen ob dies die entsprechende Stelle ist an der ich ansetzen kann, aber leider war dies bis jetzt alles erfolglos.

Hat irgendjemand eine Idee?
  Mit Zitat antworten Zitat
alzaimar
(Moderator)

Registriert seit: 6. Mai 2005
Ort: Berlin
4.956 Beiträge
 
Delphi 2007 Enterprise
 
#2

Re: TRegExpr library und GetEnvironmentVariable

  Alt 20. Jun 2005, 23:51
Wieso machst Du das nicht einfach hinterher mit StrReplace?
"Wenn ist das Nunstruck git und Slotermeyer? Ja! Beiherhund das Oder die Flipperwaldt gersput!"
(Monty Python "Joke Warefare")
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#3

Re: TRegExpr library und GetEnvironmentVariable

  Alt 21. Jun 2005, 07:01
Hallo ringli,

bei deiner Bastelei mit TRegExpr kann ich dir jetzt nicht helfen, aber das Resultat erziele ich so:

Delphi-Quellcode:
function ExpandEnvStr(const szInput: string): string;
begin
  SetLength(Result, ExpandEnvironmentStrings(pChar(szInput), nil, 0));
  ExpandEnvironmentStrings(pChar(szInput), @Result[1], Length(Result));
end;
Grüße vom marabu
  Mit Zitat antworten Zitat
ringli

Registriert seit: 7. Okt 2004
508 Beiträge
 
Delphi 11 Alexandria
 
#4

Re: TRegExpr library und GetEnvironmentVariable

  Alt 21. Jun 2005, 09:22
Und warum mach ich Idiot das mit einer Function die sich über 87 Zeilen erstreckt? Ich hatte mir nämlich eine Routine geschrieben die im Prinzip das selbe erledigt, aber leider nicht alle Fälle abdeckt...

Danke Marabu, damit funktioniert es so wie es soll
  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 07:02 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