AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi zahlen aus unterschiedlichen memos auslesen
Thema durchsuchen
Ansicht
Themen-Optionen

zahlen aus unterschiedlichen memos auslesen

Offene Frage von "centauri"
Ein Thema von centauri · begonnen am 16. Jan 2004 · letzter Beitrag vom 17. Jan 2004
Antwort Antwort
centauri

Registriert seit: 16. Jan 2004
5 Beiträge
 
#1

zahlen aus unterschiedlichen memos auslesen

  Alt 16. Jan 2004, 19:06
ich möchte aus einem Memo das diesen inhalt hat:



Code:
 Erz (360): 4.579    Kristalle (150): 2.397 
 Aluminium (200): 3.139    Energie (65): 111.267 
 Legierungen (110): 1.639    Credits insgesamt: 340.943,65


dort will ich von erz, alu, leg, kris und enrg jeweils die zahl hinter den doppelpunkten auslesen und sie einer variablen zu weisen so dass ich nacher variablen in integer habe die wie folgt aussehen:


erz=4579;
alu=3139;
leg=1639;
kris=2397;
enrg=111267;



die zahlen in den klammern sowie die späteren variablen (zahlen hinter dem doppelpunkt) sind bei jeder neuberechnung anderst (komplettes memo wird aus externem prog eingefügt). Die Zahlen bewegen sich wahrscheinlic bis in einen bereich von 12 stellen, koennten aber auch mehr sein. aber nicht unendlich.

Jetzt hab ich das problem wie krieg ich des hin? hat vielleicht jemand eine idee oder schon ein fertigen code den man anpassen könnte?

würd mich freuen wenn mir jemand helfen könnte...


greetz
centauri
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.252 Beiträge
 
Delphi 2006 Professional
 
#2

Re: zahlen aus unterschiedlichen memos auslesen

  Alt 16. Jan 2004, 19:17
Hai centauri,

herzlich Willkommen in der Delphi-PRAXIS.

Wenn ich das richtig sehe ist allen Zahlen gemeinsam das davor ein ": " steht und an danach ein " " oder ein CR/LF

Mit den Funktionen Pos und Copy solltest Du das eigentlich recht leicht lösen können.
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
centauri

Registriert seit: 16. Jan 2004
5 Beiträge
 
#3

Re: zahlen aus unterschiedlichen memos auslesen

  Alt 16. Jan 2004, 19:21
ich werds mal ausprobieren und mich dann wieder melden... thx
  Mit Zitat antworten Zitat
Michael Leyhe

Registriert seit: 1. Dez 2003
Ort: Sprockhövel
101 Beiträge
 
Delphi 7 Enterprise
 
#4

Re: zahlen aus unterschiedlichen memos auslesen

  Alt 16. Jan 2004, 19:21
Hallo!

Am einfachsten ist das wenn die einzelnen Daten untereinander in der Memo stehen. (In deinem Source stehen sie nebeneinander!).

Du bekommst den Inhalt einer bestimmten Zeile des Memos durch

memo1.lines[zeile] Jetzt kannst du mit Pos und Copy den Inhalt auslesen
Michael
Wer weis vll. ist das Leben ja ein Integer, wenn man negativ genug denkt wird es irgendwann positiv.
  Mit Zitat antworten Zitat
centauri

Registriert seit: 16. Jan 2004
5 Beiträge
 
#5

Re: zahlen aus unterschiedlichen memos auslesen

  Alt 16. Jan 2004, 19:29
die kommen aus der quelle aber leider so wie oben angegeben...
  Mit Zitat antworten Zitat
centauri

Registriert seit: 16. Jan 2004
5 Beiträge
 
#6

Re: zahlen aus unterschiedlichen memos auslesen

  Alt 16. Jan 2004, 21:29
so ich habs jetzt mal mit pos und copy versucht...
jetzt hab ich allerdings das problem, dass ich nur die erste der beiden zahlen in jeder zeile auslesen kann...

wie könnte ich an die zweite kommen?
  Mit Zitat antworten Zitat
Minz

Registriert seit: 19. Dez 2002
476 Beiträge
 
#7

Re: zahlen aus unterschiedlichen memos auslesen

  Alt 16. Jan 2004, 21:48
Angenommen du hast diese Zeile ausgelesen:

Erz (360): 4.579 Kristalle (150): 2.397

und ermittelst nun den ersten Wert, mit Pos und Copy, dann kannst du diesen Teil per Delete auch aus dem String entfernen, und hast dann nur noch

Kristalle (150): 2.397

übrig. Dies kannst du genauso verarbeiten wie das erste Stück usw.
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.252 Beiträge
 
Delphi 2006 Professional
 
#8

Re: zahlen aus unterschiedlichen memos auslesen

  Alt 17. Jan 2004, 08:28
Zitat von centauri:
...jetzt hab ich allerdings das problem, dass ich nur die erste der beiden zahlen in jeder zeile auslesen kann...
Hai centauri,

ohne deinen Quellcode für das "suchen" der Zahlen zu sehen kann man da nicht viel sagen.
Zeige doch mal den Bereich in dem Du mit Copy und Pos versuchst die Zahlen im Text zu finden.
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
centauri

Registriert seit: 16. Jan 2004
5 Beiträge
 
#9

Re: zahlen aus unterschiedlichen memos auslesen

  Alt 17. Jan 2004, 15:28
so, mit der funkction kann ich die erste zahl auslesen... vielleicht kann mir den ja jemand umschreiben, dass sie die zweite zahl packt...

Delphi-Quellcode:
{© by Himitsu @ Delphi-PRAXiS          }
{Org by "Jens Schumann" @ Delphi-PRAXiS}

Function TForm3.GetNumbers(L: TStrings; aStart, aEnd: String; aPos: Integer): String;
    Function DeleteNonNumbers(Const Value: String): String;
      Var I: Integer;

      Begin
        Result := '';
        For I := 1 to Length(Value) do Begin
          If Value[I] in ['0'..'9', ',', '-'] Then Result := Result + Value[I];
          If Value[I] = '.Then Result := Result + '';
        End;
        {eventuelle Tausendertrennzeichen entfernen}

      End;

    Var H: String;
      iCnt: Integer;
      aCount: Integer;

    Begin
      Result := '0';
      aStart := AnsiUpperCase(aStart);
      aEnd := AnsiUpperCase(aEnd);
      aCount := 0;
      For iCnt := 0 to L.Count - 1 do Begin
        H := AnsiUpperCase(L[iCnt]);
        If (Pos(aStart, H) > 0) and (Pos(aEnd, H) > 0) Then Begin
          Inc(aCount);
          If aCount = aPos Then Begin
            H := Copy(L[iCnt], Pos(aStart, H) + Length(aStart), Pos(aEnd, H) - Pos(aStart, H) - Length(aStart));
            H := DeleteNonNumbers(H);
            If H > 'Then Result := H Else Result := '0';
            break;
          End;
        End;
      End;
End;


thx
centauri
  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 22:23 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