Forum: Sonstige Fragen zu Delphi
Delphi
by DeddyH,
6. Aug 2008
Ich hab da auch mal einen Versuch gestartet (könnte aber bei sehr großen Skripten auch ein Speicher- oder Performanceproblem haben):procedure StripSQLComments(const sl: TStrings);
const cmBegin = '/*';
cmEnd = '*/';
cmOneLine = '--';
var i,start,ende: integer;
temp: string;
begin
sl.BeginUpdate;
try
//Mehrzeilige Kommentare entfernen
Forum: Sonstige Fragen zu Delphi
Delphi
by DeddyH,
6. Aug 2008
Kleiner Vorschlag:for i:= SQLLines.Count-1 downto 0 do
Begin
beg:=pos('--',Trim(SQLLines));
Und
könnte man auch durch case ersetzen, ist aber nicht unbedingt nötig. Ansonsten teste ich das heute Abend mal zu Hause :zwinker:
Forum: Sonstige Fragen zu Delphi
Delphi
by DeddyH,
6. Aug 2008
Sieht auf den ersten Blick gut aus, allerdings löschst Du keine einzeiligen Kommentare am Zeilenende.
@Grumpy: das ist mir später dann auch aufgefallen :lol:
Forum: Sonstige Fragen zu Delphi
Delphi
by DeddyH,
6. Aug 2008
Versuch es mal mit Zwischenspeichern der Teilstrings wie von Phoenix angesprochen.
Forum: Sonstige Fragen zu Delphi
Delphi
by DeddyH,
6. Aug 2008
Übergibst Du jetzt als const-Parameter?
Forum: Sonstige Fragen zu Delphi
Delphi
by DeddyH,
6. Aug 2008
Ja, denn bei der Übergabe als var kannst Du theoretisch sogar die Referenz ändern, d.h. wenn Du ListBox.Items übergibst, könntest Du auf ComboBox.Items referenzieren. Daher habe ich persönlich mir angewöhnt, Objektinstanzen immer als const-Parameter zu übergeben.