![]() |
Überprüfen ob ein String-Array ein gewisses Zeichen enthält
Moin,
Wie der Titel schon unschwer vermuten lässt bin ich auf der Suche nach einer Funktion, die überprüft ob ein gewisses Zeichen in einem Array vorhanden ist. Ich suche jetzt schon etwas länger und würde sie nur sehr ungern selber schreiben :mrgreen: |
Re: Überprüfen ob ein String-Array ein gewisses Zeichen enth
handelt es sich um ein Array of String wo du wissen willst ob ein Zeichen in einem der Strings enthalten ist oder ist es ein Array von Zeichen oder ist es einfach nur ein String?
Wenn du das nur ungern selbst schreiben würdest deutet es darauf hinn das du dich nicht sonderlich damit auskennst (denn es sind nur paar Zeilen). Und in dem Falle empfehle ich eigentlich "selbst schreiben" damit du was lernst. |
Re: Überprüfen ob ein String-Array ein gewisses Zeichen enth
Es ist ein Array (ein-dimensional), das pro Index jeweils ein Zeichen enthält und ich könnte problemlos so eine Funktion schreiben, allerdings achte ich sehr auf eleganten Code und deshalb würde ich gerne wissen ob es so eine Funktion schon gibt, wenn ja benutz ich sie wenn nicht schreib ich sie selber.
|
Re: Überprüfen ob ein String-Array ein gewisses Zeichen enth
Wenn du es selber schreiben würdest, wäre es so ziemlich genau eine einzige Zeile. Ich denke, das ist kurz genug, oder?
Mfg |
Re: Überprüfen ob ein String-Array ein gewisses Zeichen enth
Delphi-Quellcode:
Elegant genug?
i:=low(array)
found := false; while (not found) and (i <= high(array)) do begin found := array[i] = gesuchtesZeichen; inc(i); end; Gut, wenn man noch ein Funktion (frei nach Beitrag #7) drumherumbasteln möchte:
Delphi-Quellcode:
Grüße
function isCharIn(const CArray: Array of char; c : Char):boolean;
var i: Integer; begin result := false; i := low(CArray) while (not result) and (i <= high(CArray)) do begin result := CArray[i] = c; inc(i); end; end; Klaus |
Re: Überprüfen ob ein String-Array ein gewisses Zeichen enth
siehe Unit StrUtils --> AnsiIndexText (steht erst in den höheren Delphi-Versionen zur Verfügung)
|
Re: Überprüfen ob ein String-Array ein gewisses Zeichen enth
Delphi-Quellcode:
wuerde ich sogar noch eleganter finden :o)
function IsCharIn(const c: array of char; s: Char): Boolean;
var i: LongInt; begin for i := low(c) to high(c) do begin IsCharIn := s = c[i]; if IsCharIn then break; end; end; |
Re: Überprüfen ob ein String-Array ein gewisses Zeichen enth
Hallo,
hier ist noch ein Vorschlag:
Delphi-Quellcode:
Gruß Hawkeye
var
ch : Char; SArray : array [0..10] of Char; DArray : array of Char; begin if Pos(ch, SArray) > 0 then ShowMessage ('found'); if Pos(ch, string(DArray)) > 0 then ShowMessage ('found'); end |
Re: Überprüfen ob ein String-Array ein gewisses Zeichen enth
ich hätte eher an eine While schleife gedacht die solange durchläuft bis das ende erreicht ist (bzw. welche rückwärts läuft solange der Index > -1 ist) und das Zeichen nicht erreicht wurde.
Delphi-Quellcode:
var i: Integer;
begin i := length(array) - 1; while ((i > -1) and (array[i] <> gesuchtes_zeichen)) do dec(i); result := (i > -1); |
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:34 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