![]() |
Re: If-Schleifen-Haufen zusammenfassen
Delphi-Quellcode:
mein letzter Versuch.
const
FileType ='avi_mpg_mpeg_wmf'; if pos(s,FileType) <> 0 then ... Einen schönen Feierabend. Grüße Klaus |
Re: If-Schleifen-Haufen zusammenfassen
Wow danke für die extrem schnellen antworten!
Besonders Letzte methode gefällt mir! Vielen dank! |
Re: If-Schleifen-Haufen zusammenfassen
Zitat:
|
Re: If-Schleifen-Haufen zusammenfassen
kann man sich nicht ne boolean Prozedur schreiben, der man den Vergleichswert mit allen Möglichkeiten übergibt ( :kotz: genau), und true rauskriegt, wenn einer der Möglichkeiten= dem Vergleichswert sind...
|
Re: If-Schleifen-Haufen zusammenfassen
Hi dino,
das sollte wohl kein Problem darstellen:
Delphi-Quellcode:
function InArray(What: String; const Values: Array of String): Boolean;
begin Result := AnsiIndexText(What, Values) > - 1; end; |
Re: If-Schleifen-Haufen zusammenfassen
Zitat:
|
Re: If-Schleifen-Haufen zusammenfassen
AnsiIndexText gibts aber noch nicht in delphi5 ...
alternativ erstelle man sich ein array of integer und eine funktion die man mit dem suchwort füttert, die dann das array durchläuft und den index bw true oder false zurückliefert. |
Re: If-Schleifen-Haufen zusammenfassen
Zitat:
Delphi-Quellcode:
Aufruf wäre etwa so:
function InArray(s: string; const StrArray: array of string): boolean;
var i: integer; begin result := false; for i := 0 to high(StrArray)-1 do begin if s=StrArray[i] then begin result := true; break; end; end;
Delphi-Quellcode:
Ist jetzt grob zusammen gezimmert ;)
const
FileTypes: array [0..4] of string = ('avi', 'mpg', 'mpeg', 'wmf', 'wmv'); //... if InArray(s, FileTypes) then DoSomething; |
Re: If-Schleifen-Haufen zusammenfassen
Hallo,
oder die Extensionen in eine Stringlist schreiben und dann mit IndexOf prüfen. |
Re: If-Schleifen-Haufen zusammenfassen
Delphi-Quellcode:
würd ich immer über ne while schleife lösen,
function InArray(s: string; const StrArray: array of string): boolean;
var i: integer; begin result := false; for i := 0 to high(StrArray)-1 do begin if s=StrArray[i] then begin result := true; break; end; end; end; weil break sind nen "no go" also:
Delphi-Quellcode:
und das ganze könnte man dann ja noch um die möglichkeit erweitern auf groß/kleinschreibung zu achten oder nicht
function InArray(s: string; const StrArray: array of string): boolean;
var i: integer; begin result := false; i := 0; while (not Result) and (i < to high(StrArray)) do begin result := s=StrArray[i]; Inc(i); end; end;
Delphi-Quellcode:
function InArray(s: string; const StrArray: array of string; bCaseSensitiv: Boolean = false): boolean;
var i: integer; begin result := false; if not bCaseSensitiv then s := AnsiUpperCase(s); i := 0; while (not Result) and (i < to high(StrArray)) do begin if bCaseSensitiv then result := s=StrArray[i] else result := s=AnsiUpperCase(StrArray[i]); Inc(i); end; end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:54 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