Entwickler-Ecke
Delphi Language (Object-Pascal) / CLX - In Arrays suchen?
Borlox - Fr 03.01.03 16:13
Titel: In Arrays suchen?
Hi Leute,
ich habe ein zweidimensionales Array (test[1000][5]) und nun möchte ich in den 1000 "verschiedenen Variablen" nach einem bestimmten Text suchen! Ich könnte das natürlich auch mit einer for i Schleife machen, aber es gibt doch sicherlich noch eine bessere Möglichkeit!!! Oder???
Danke
AXMD - Di 07.01.03 14:34
Hi,
eine for-Schleife müsste doch eigentlich reichen. Nehmen wir mal an, du hättest ein
meinarray: Array [1..1000] of Array [1..5] of String;
Dann sähe der Code dazu in etwa so aus:
Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10:
| var i, j: Word; begin for i := 1 to 1000 do begin for j := 1 to 5 do begin if meinarray[i, j] = 'Mein Text' then ShowMessage('Text befindet sich in: '+ InttoStr(i) + ', ' + InttoStr(j)); end; end; end; |
Ist jetzt nur so aus dem Ärmel geschüttelt - hoffe es funktioniert.
AXMD
Borlox - Di 07.01.03 14:59
Titel: !!!
Ich habe ja schon geschrieben, das ich das auch so gemacht hätte, aber es wäre viel leichter, wenn ich einen Befehl wüsste, mit dem man einfacher danach suchen kann!
Außerdem weiß ich noch nicht so genau, wie ich das mache, wenn es mehrere Übereinstimmungen gibt!
Udontknow - Di 07.01.03 15:35
Wie wäre es, wenn du eine Funktion schreibst, die dir den Index des ersten Vorkommens zurückliefert. Ein zu übergebender Parameter könnte dann noch den Beginn des abzusuchenden Bereiches definieren, sodaß du auch auf mehrere Vorkommen überprüfen kannst.
Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10:
| function SeekStr(SeekedStr,StartAt:Integer=0); begin Result:=-1; for i:=StartAt to High(MyArray) do if MyArray[i]:=SeekedStr then begin Result:=i; exit; end; end; |
Cu, :)
Udontknow
Ex0rzist - Mi 08.01.03 22:12
Was Borlox sucht, ist ein spezieller Befehl um ein Array zu durchsuchen.
So etwas gibt es aber leider nicht.
Borlox - Mi 08.01.03 22:17
Titel: Schade
Schade, aber trotzdem Danke an alle!
HeLe - Mo 17.02.03 15:59
| Ex0rzist hat folgendes geschrieben: |
Was Borlox sucht, ist ein spezieller Befehl um ein Array zu durchsuchen.
So etwas gibt es aber leider nicht. |
die antwort kommt vielleicht ein bißchen spät, aber das wollt ich hier so nicht stehen lassen:
bei etwas fortgeschritteneren aufgaben sollte man eigentlich immer statt arrays containerklassen wie
tlist, tobjectlist und in diesem fall
tstringlist verwenden. und siehe da, letztere hat ne methode
find :lol:
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!