AGB  ·  Datenschutz  ·  Impressum  







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

Leerzeichen aus string löschen

Ein Thema von maximus Caesar · begonnen am 12. Mär 2006 · letzter Beitrag vom 14. Mär 2006
Antwort Antwort
Seite 1 von 3  1 23      
Benutzerbild von maximus Caesar
maximus Caesar

Registriert seit: 26. Sep 2004
Ort: Biberach
319 Beiträge
 
Turbo Delphi für Win32
 
#1

Leerzeichen aus string löschen

  Alt 12. Mär 2006, 11:05
Hallo!
Ich habe einen String a mit mehreren Leerzeichen am Anfang. Diese möchte ich komplett löschen.
ICh dachte das kann man so machen:
Delphi-Quellcode:
repeat
  delete(a,0,1);
until a[1]<>' ';
aber ich bekomme immer eine fehlermeldung und die letzte zeile wird markiert.
Wo ist der Fehler?
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#2

Re: Leerzeichen aus string löschen

  Alt 12. Mär 2006, 11:09
Guck mal in der Hiulfe unter [oh]trim(left/right)[/oh].
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von maximus Caesar
maximus Caesar

Registriert seit: 26. Sep 2004
Ort: Biberach
319 Beiträge
 
Turbo Delphi für Win32
 
#3

Re: Leerzeichen aus string löschen

  Alt 12. Mär 2006, 11:11
Danke!
  Mit Zitat antworten Zitat
Benutzerbild von Valle
Valle

Registriert seit: 26. Dez 2005
Ort: Karlsruhe
1.223 Beiträge
 
#4

Re: Leerzeichen aus string löschen

  Alt 12. Mär 2006, 11:12
Merkwürdig,
in der Hiulfe habe ich nichts gefunden
und ein Fehler zeigt er mir auch nicht, er hängt sich nur auf...

* er = mein PC
Valentin Voigt
BOFH excuse #423: „It's not RFC-822 compliant.“
Mein total langweiliger Blog
  Mit Zitat antworten Zitat
Benutzerbild von 3_of_8
3_of_8

Registriert seit: 22. Mär 2005
Ort: Dingolfing
4.129 Beiträge
 
Turbo Delphi für Win32
 
#5

Re: Leerzeichen aus string löschen

  Alt 12. Mär 2006, 11:15
Also am Code würde ich mal folgendes ändern:

while a[1]=' do delete(a,0,1);
[edit=SirThornberry]Delphitags berichtigt. Mfg, SirThornberry[/edit]
Manuel Eberl
„The trouble with having an open mind, of course, is that people will insist on coming along and trying to put things in it.“
- Terry Pratchett
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#6

Re: Leerzeichen aus string löschen

  Alt 12. Mär 2006, 11:16
Trim entfernt Leerzeichen am Anfang und am /ende eines Strings. Soll nur am Anfang oder nur am Ende entfernt werden verwendet man die Funktioenne TrimLeft bzw. TrimRight

Zitat von Delphi-Hilfe:
Trim Routine

Entfernt alle am Anfang und Ende eines Strings vorhandenen Leer- und Steuerzeichen.

Unit
SysUtils

Syntax


[Delphi] function Trim(const S: string): string; overload;



[Delphi] function Trim(const S: WideString): WideString; overload;


Beschreibung
Trim entfernt alle am Anfang und Ende des mit S angegebenen Strings vorhandenen Leer- und Steuerzeichen.
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von Zacherl
Zacherl

Registriert seit: 3. Sep 2004
4.629 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#7

Re: Leerzeichen aus string löschen

  Alt 12. Mär 2006, 11:17
Trim ist die beste Lösung, aber so sollte auch die Andere funktionieren:

Delphi-Quellcode:
repeat
  Delete(a, 1, 1);
until Copy(a, 1, 1) <> ' ';
Florian
Projekte:
- GitHub (Profil, zyantific)
- zYan Disassembler Engine ( Zydis Online, Zydis GitHub)
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#8

Re: Leerzeichen aus string löschen

  Alt 12. Mär 2006, 11:19
trim würde ich aus performancegründen vorziehen.
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Benutzerbild von 3_of_8
3_of_8

Registriert seit: 22. Mär 2005
Ort: Dingolfing
4.129 Beiträge
 
Turbo Delphi für Win32
 
#9

Re: Leerzeichen aus string löschen

  Alt 12. Mär 2006, 11:20
Das mit a[1] dürfte eleganter sein als copy. Und das repeat würde ich durch ein while ersetzen.

Denn mal angenommen, am Anfang des Strings befindet sich kein Leerzeichen, dann würde trotzdem das erste Zeichen gelöscht werden. Besser noch: Folgender String: 'a b'

Bei deinem Code würde nur 'b' übrig bleiben.
Manuel Eberl
„The trouble with having an open mind, of course, is that people will insist on coming along and trying to put things in it.“
- Terry Pratchett
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#10

Re: Leerzeichen aus string löschen

  Alt 12. Mär 2006, 11:23
ich würde mit einer For-Schleife von Anfang bis ende durchgehen und eine zweite zählvariable mitführen die bestimmt wohin geschrieben wird. Kommt ein Leerzeichen so wird diese nicht weitergerückt. Da aber Trim wohl nix anderes macht erspaare ich mir mal den Quelltext zz posten.
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 3  1 23      


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 09:51 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