Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Textstellöen löschen (https://www.delphipraxis.net/85505-textstelloeen-loeschen.html)

Tommy1988 31. Jan 2007 18:07


Textstellöen löschen
 
halölo, ist es möglich, bestimmte textstellen auf buttonklick aus einem text zu löschen?

also z.b. solches hier

) -->

// sowas hier auch

## sowas auch

{und sowas auch}

also dass der sich diese sachen raussucht irgendwie?

inherited 31. Jan 2007 18:18

Re: Textstellöen löschen
 
Suche mal in der DelphiHilfe nach Pos, PosEx und Copy. Das ist alles as du brauchst ;)

Tommy1988 31. Jan 2007 18:21

Re: Textstellöen löschen
 
kann ich noch nixnmit anfangen.. eion kleines beispiel wäre nicht schlecht etc..

Tommy1988 31. Jan 2007 18:23

Re: Textstellöen löschen
 
ja egal.. aber ein beispiel wäre nicht schlecht..

BenjaminH 31. Jan 2007 18:23

Re: Textstellöen löschen
 
Wie (fast) überall, mit F1 ;-)

Christian Seehase 31. Jan 2007 18:42

Re: Textstellöen löschen
 
Moin Tommy,

wenn ich mir so ansehe, nach was Du suchst, kann ich nur sagen:
Vorsicht.

Manche dieser Kennungen könnten auch in Strings vorkommen.
Wenn Du das nicht berücksichtigst, würdest Du Stellen bearbeiten, die gar nicht bearbeitet werden müssten.

Tommy1988 31. Jan 2007 18:48

Re: Textstellöen löschen
 
wegen der F1 sache hatte ich mich verlesen sorry.. naja.. schln und gut aber wie krieg ich das denn schlussendlich hin?

inherited 31. Jan 2007 18:51

Re: Textstellöen löschen
 
Delphi-Quellcode:
function DeleteAllComments(str: String): String;
var a, b: Integer;
begin
  result:=str;
  while Pos('{', result)<>0 do
  begin
    a:=Pos('{', result);
    b:=PosEx('}', result, a);
    result:=copy(result, 1, a-1)+copy(result, b+1, length(result));
  end;
end;
Ungetestet. Aber das hättest du mit ein wenig nachdenken auch selber geschaft, oder? ;)
Du solltest aber noch beachten, ob die Kommentare in Strings vorkommen.

Tommy1988 31. Jan 2007 19:12

Re: Textstellöen löschen
 
jetzt musst du mir nurnoch sagen wie ich das ding anwende, wo ich es hinkopiere.. muss ich einen button einfügen oder sowas ?

PosEx wurde nicht deklariert.. so weiter weis ich nicht
(undefinierter bezeichner PosEx)

Tommy1988 31. Jan 2007 19:24

Re: Textstellöen löschen
 
achso und wo ich schnomal dabei bin.. wie binde ich das in ein memo ein? der soll ja den text in einem memo löschen..

Blackheart 31. Jan 2007 19:54

Re: Textstellöen löschen
 
Ich glaube Dir fehlen noch einige Grundlagen, am besten noch einige Anfänger Tuts reinziehen. :zwinker:

Die Funktion erwartet einen String und gibt als Ergebnis einen string zurück also

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
  Memo1.Text:=DeleteAllComments(Memo1.Text);
end;

inherited 31. Jan 2007 19:56

Re: Textstellöen löschen
 
Zitat:

Zitat von Tommy1988
jetzt musst du mir nurnoch sagen wie ich das ding anwende, wo ich es hinkopiere.. muss ich einen button einfügen oder sowas ?

PosEx wurde nicht deklariert.. so weiter weis ich nicht
(undefinierter bezeichner PosEx)

Benutze doch mal die Delphi-Hilfe! Die würde dir sagen, das PosEx in der Unit StrUtils ist.
Die Funktion kopierst du einfach irgendwo hin vor die Funktion in der du es aufrufst. (Vielleicht würden dir die Tutorials auf www.dsdt.info ein wenig weiterhelfen ;) )


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:30 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz