AGB  ·  Datenschutz  ·  Impressum  







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

String Filtern

Ein Thema von philiph · begonnen am 27. Nov 2005 · letzter Beitrag vom 28. Nov 2005
Antwort Antwort
Seite 1 von 2  1 2      
philiph
(Gast)

n/a Beiträge
 
#1

String Filtern

  Alt 27. Nov 2005, 13:42
Wie kann ich aus den Daten eiens Strings(Zahlen und Buchstaben vorhanden) alle Zahlen herausfiltern und in einem anderen String speichern?
  Mit Zitat antworten Zitat
Benutzerbild von Ultimator
Ultimator

Registriert seit: 17. Feb 2004
Ort: Coburg
1.860 Beiträge
 
FreePascal / Lazarus
 
#2

Re: String Filtern

  Alt 27. Nov 2005, 13:47
Wenn du nachher einfach nur alle Ziffern nacheinander in nem anderen String stehen haben willst, dann mach das so (ungetestet, müsste aber funzen):
Delphi-Quellcode:
for i := 1 to length(Originalstring) do
  if OriginalString[i] in ['0'..'9'] then
    begin
      ZahlenString := ZahlenString + OriginalString[i];
      delete(OriginalString, i, 1); //Markierte Zeile
    end;
Wenn die Zahlen im OriginalString drinbeleiben sollen, dann kommentier einfahc die markierte Zeile und somit den delete-Aufruf aus

//edit i von 1 anfangen lassen zu zählen (vorher wars 0, gibt aber keinen Sinn, weil in String[0] die Längenangabe steht)
Julian J. Pracht
  Mit Zitat antworten Zitat
philiph
(Gast)

n/a Beiträge
 
#3

Re: String Filtern

  Alt 27. Nov 2005, 19:19
Der Filter an sich funktioniert zwar aber er macht aus 123456789 13579
  Mit Zitat antworten Zitat
Benutzerbild von Totti
Totti

Registriert seit: 1. Dez 2004
Ort: Harrislee
59 Beiträge
 
Delphi 2005 Personal
 
#4

Re: String Filtern

  Alt 27. Nov 2005, 19:21
nach der deleteaktion soltle net erhöht werden ... da erledigt das delete ja schon gewissermaßen.
Malte
  Mit Zitat antworten Zitat
Benutzerbild von Ultimator
Ultimator

Registriert seit: 17. Feb 2004
Ort: Coburg
1.860 Beiträge
 
FreePascal / Lazarus
 
#5

Re: String Filtern

  Alt 27. Nov 2005, 21:03
Hm, stimmt, das hab ich nicht bedacht.
Eventuell müsste es mit einer for-downto-Schleife klappen.
Julian J. Pracht
  Mit Zitat antworten Zitat
Benutzerbild von Totti
Totti

Registriert seit: 1. Dez 2004
Ort: Harrislee
59 Beiträge
 
Delphi 2005 Personal
 
#6

Re: String Filtern

  Alt 28. Nov 2005, 10:37
oder einfach ne whileschleife, wo man die int-variable manuell erhöht bzw. eben nicht erhöht, wenn man delete nutzt
Malte
  Mit Zitat antworten Zitat
mumu

Registriert seit: 28. Okt 2003
Ort: Bamberg
519 Beiträge
 
#7

Re: String Filtern

  Alt 28. Nov 2005, 10:42
warum nicht einfach das delete weglassen?!
Delphi-Quellcode:
ZahlenString := '';
for i := 1 to length(Originalstring) do
if OriginalString[i] in ['0'..'9'] then
begin
  ZahlenString := ZahlenString + OriginalString[i];
end;
  Mit Zitat antworten Zitat
Angel4585

Registriert seit: 4. Okt 2005
Ort: i.d.N.v. Freiburg im Breisgau
2.199 Beiträge
 
Delphi 2010 Professional
 
#8

Re: String Filtern

  Alt 28. Nov 2005, 11:15
Mein Vorschlag:
Delphi-Quellcode:
ZahlenString := '';
for i := length(Originalstring) downto 1 do
 if OriginalString[i] in ['0'..'9'] then
  Insert(OriginalString[i],Zahlenstring,0);
Martin Weber
Ich bin ein Rüsselmops
  Mit Zitat antworten Zitat
Benutzerbild von Totti
Totti

Registriert seit: 1. Dez 2004
Ort: Harrislee
59 Beiträge
 
Delphi 2005 Personal
 
#9

Re: String Filtern

  Alt 28. Nov 2005, 11:16
Zitat von Ultimator:
Wenn die Zahlen im OriginalString drinbeleiben sollen, dann kommentier einfahc die markierte Zeile und somit den delete-Aufruf aus
Das ist klar ... wenn das net rausgelöscht werden soll, so dass man eine Kette ohne Zahlen und eine nur mit Zahlen ,
dann brauchts das delete net und das ganze Problem ist hinfällig
Malte
  Mit Zitat antworten Zitat
Benutzerbild von Daniel B
Daniel B

Registriert seit: 27. Okt 2005
Ort: Dachau
453 Beiträge
 
Delphi 2007 Professional
 
#10

Re: String Filtern

  Alt 28. Nov 2005, 11:25
http://www.delphipraxis.net/internal...ghlight=daniel
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 10:34 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