![]() |
Eine Variable unterteilen?!
Hallo,
ich habe volgendes problem, ich bekomme durch mein programm eine veriable z.B.3 häuser also integer + leerzeichen + string und ich möchte jetzt die eine variable "3 häuser" aufteilen in variable x und y also soll x den integerwert annehmen und y den stringwert, wie kann ich so etwas realisieren? P.S.Ich arbeite mit Delphi 7 |
Re: Eine Variable unterteilen?!
Also das wichtigste wird wohl die Funktion
![]() Dann könntest du entweder per ![]() ![]() ![]() ![]() |
Re: Eine Variable unterteilen?!
|
Re: Eine Variable unterteilen?!
also das explode schaut ja schon sehr spannend aus, aber ich wollte eigentlich nich doppelt soviel quelltext schreiben nur wegen der trennung der variable, geht das nicht kürzer?
Könnte mir nicht mal jemand nen "relativ" kurzen quelltext , der funktioniert :P , schreiben? Danke schon mal |
Re: Eine Variable unterteilen?!
Die Sichworte hat dir malo doch schon genannt.
|
Re: Eine Variable unterteilen?!
die sagen mir aber nicht wirklich was
|
Re: Eine Variable unterteilen?!
zudem ist explode etc. vielleicht etwas lang aber es geht ja auch immer um performance. Sicher gibt es auch kürzere Varianten die eventuell 10 mal langsammer sind. Aber wie luckie schon geschrieben hat wurden bereits stichworte genannt. Desweiteren wird in diesem Forum nicht für andere die Arbeit erledigt sondern geholfen (ansonsten lernst du ja nicht viel wenn dir die fertige funktion vorgesetzt wird). Wenn du also an irgend einer stelle mit deiner funktion nicht weiterkommst poste konkret an welcher stelle und dir wird auch geholfen.
In deinem ersten posting schreibst du: Zitat:
Wenn dir die Begriffe/Stichworte nix sagen benutze doch die Hilfe (nicht umsonst ist das Handbuch davor mit dem Tooltip) oder benutz die Suche. Denn so kommt es rüber als ob du nicht viel Eigeninitiative zeigst und nur wartest das jemand für dich das ganze komplett machst. Ein bischen musst du schon selbst machen. |
Re: Eine Variable unterteilen?!
also , die variable , die ich teilen will ist eine integer variable
|
Re: Eine Variable unterteilen?!
Zitat:
|
Re: Eine Variable unterteilen?!
Zitat:
|
Re: Eine Variable unterteilen?!
ach, ich bin manchmal so "unkonzentriert"
is natürlich ne string variable |
Re: Eine Variable unterteilen?!
Dann schau dir mal Copy und Pos an.
Mit den beiden Functionen solltest du es lösen. Wenn die Anzahl der Häuser immer nur einstellig ist kannst du auf ein einzelnes Stringelement auch mit
Delphi-Quellcode:
zugreifen.
Irgendeinstring[1]
so bekommst du das 1. Zeichen von dem String in dem Fall die Zahl. :cyclops: |
Re: Eine Variable unterteilen?!
danke, ich denke das würde mein problem lösen
|
Re: Eine Variable unterteilen?!
so, also ich kann jetzt die erste ziffer/buchstaben auslesen, von der variable, gibt es die möglichkeit von der variable z.b. die erste ziffer/buchstaben zu löschen?
d.h. zuerst:3 häuer dann: häuser |
Re: Eine Variable unterteilen?!
|
Re: Eine Variable unterteilen?!
Hi zusammen.
Wenn du ein Record machst kannst du ne Integer- und ne String-variable zusammenfassen. Weiss nich, ob dir das weiterhilft. zum Bleistift: type TImobilie = record: Anzahl: integer; Gebaeude: string; end; Wie gesagt: Weiss nich ob dir das weiter hilft, nur: so kannst du die instanzierte Variable, dann auch wieder auslesen. Leider musst du jeden Teil (also zB: imobilie.Anzahl) einzeln zuweisen. |
Re: Eine Variable unterteilen?!
hm....habe jetzt mal die hilfe von delphi durchgeschaut, kann aber nichts finden, wie kann ich z.b. die erste ziffer/buchstabe der string variablen löschen?
|
Re: Eine Variable unterteilen?!
dafür gibt es "delete" aber es geht auch mit copy:
Delphi-Quellcode:
DeinString := copy(DeinString, 2, Length(DeinString) - 1);
|
Re: Eine Variable unterteilen?!
verstehe ich das dann so richtige?
Delphi-Quellcode:
irgendeinstrin[1].delete;
|
Re: Eine Variable unterteilen?!
warum schaust du dir nicht die hilfe an??????
|
Re: Eine Variable unterteilen?!
Zitat:
|
Re: Eine Variable unterteilen?!
dann solltest du mal lernen wie man die hilfe benutzt. Als erstes delete eingeben und dann wird da unter anderem auch "Delete function" angezeigt:
Zitat:
|
Re: Eine Variable unterteilen?!
also, danke für den tipp, aber irgendwie funktioniert das nicht, könntest du mir bitte ein beispiel geben?
|
Re: Eine Variable unterteilen?!
Zitat:
Zitat:
|
Re: Eine Variable unterteilen?!
Vielleicht solltest du versuchen die Stringelemente einzeln zu löschen
repeat For i:=0 to stringlaenge do deinstring[i]:=deinstring[i+1]; dec(stringlaenge); until string[1] = ' '; Bei jedem Durchlauf wird das erste Zeichen deines Strings gelöscht. Gruß, |
Re: Eine Variable unterteilen?!
Delphi-Quellcode:
function GetStringNr(const NR : integer; const Value : AnsiString; const delim : char = ';'): Ansistring;
var i, idx : integer; iOrd : byte; Res : AnsiString; Used : Integer; begin Result := ''; idx := 1; Used := 0; SetLength(Res, Length(Value)); for i := 1 to length(Value) do begin if Value[i] = delim then begin inc(IDX); continue; end; If IDX > NR then break; if IDX = NR then begin inc(Used); Res[used] := Value[i]; end; end; // von for SetLength(Res, Used); result := res; end; // von GetStringNR
Delphi-Quellcode:
Showmessage(GetStringNr(4,'Ich bin ein Satz mit Leerzeichen als Trennung, ' '));
|
Re: Eine Variable unterteilen?!
also, danke an alle, ich habe das problem jetzt gelöst :thumb: :) :witch:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:43 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