Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Durchsuchen nach einem gewissen String (https://www.delphipraxis.net/118493-durchsuchen-nach-einem-gewissen-string.html)

Hexla 8. Aug 2008 17:48


Durchsuchen nach einem gewissen String
 
Hallo Delphi Community :P


Also ich habe mal wieder ein problem. Ich möchte einen String durchsuchen lassen, unzwar wie folgt:

Delphi-Quellcode:
s:= '130 - 140';
for i:=1 to length(s) do
if s[i]<>'-' then
begin
//Anweisung wenn String das Zeichen - nicht enthält.
end;
Also was ich damit machen möchte ist folgendes: Ich habe einen Wert in einem String. Dieser soll durchsucht werden nach dem Zeichen -. Wenn es das Zeichen nicht enthält soll eine Aktion durchgeführt werden, wenn es das Zeichen enthält geschiet eine andere Aktion.

Was mache ich falsch? habe schon alles versucht^^

Der.Kaktus 8. Aug 2008 17:51

Re: Durchsuchen nach einem gewissen String
 
Zitat:

Zitat von Hexla
Hallo Delphi Community :P


Also ich habe mal wieder ein problem. Ich möchte einen String durchsuchen lassen, unzwar wie folgt:

Delphi-Quellcode:
s:= '130 - 140';
for i:=1 to length(s) do
if s[i]<>'-' then
begin
//Anweisung wenn String das Zeichen - nicht enthält.
end;
Also was ich damit machen möchte ist folgendes: Ich habe einen Wert in einem String. Dieser soll durchsucht werden nach dem Zeichen -. Wenn es das Zeichen nicht enthält soll eine Aktion durchgeführt werden, wenn es das Zeichen enthält geschiet eine andere Aktion.

Was mache ich falsch? habe schon alles versucht^^

:shock: Nix falsch!!??

toms 8. Aug 2008 17:53

Re: Durchsuchen nach einem gewissen String
 
Hallo, warum verwendest du nicht Pos() ?

Neutral General 8. Aug 2008 17:54

Re: Durchsuchen nach einem gewissen String
 
Ich glaube, das was du suchst ist Delphi-Referenz durchsuchenpos

Zitat:

Zitat von OH
Delphi syntax:

function Pos(Substr: string; S: string): Integer;

Description

In Delphi, Pos searches for a substring, Substr, in a string, S. Substr and S are string-type expressions.

Pos searches for Substr within S and returns an integer value that is the index of the first character of Substr within S. Pos is case-sensitive. If Substr is not found, Pos returns zero.

The PosEx function is similar to Pos, but provides additional features and can be used in C++ code.


Hexla 8. Aug 2008 17:56

Re: Durchsuchen nach einem gewissen String
 
Naja mit Position hatte ich es versucht bin jedoch gescheitert, ich will ja nur ne Logische Anweisung erzeugen.

Wenn String Zeichen enthält: Garnichts machen
Wenn String Zeichen nicht enthält: Was machen

Neutral General 8. Aug 2008 17:56

Re: Durchsuchen nach einem gewissen String
 
Lies dir meinen Post nochmal durch.

Hexla 8. Aug 2008 17:57

Re: Durchsuchen nach einem gewissen String
 
Ah ok danke ich werds mal mit Pos versuchen =)

himitsu 8. Aug 2008 18:05

Re: Durchsuchen nach einem gewissen String
 
nur der Vollständigkeit halber:
Delphi-Quellcode:
for i:=1 to length(s) do
  if s[i] = '-' then
  begin
    //Anweisung wenn String das Zeichen "-" enthält.
    Break;
  end;
Delphi-Quellcode:
// langsam
B := True;
for i:=1 to length(s) do
  if s[i] = '-' then
    B := False;

if B then
begin
  //Anweisung wenn String das Zeichen "-" nicht enthält.
end;

// schneller
B := True;
for i:=1 to length(s) do
  if s[i] = '-' then
  begin
    B := False;
    Break;
  end;

if B then
begin
  //Anweisung wenn String das Zeichen "-" nicht enthält.
end;
aber schneller und einfacher ist dennoch Pos :angel:
Delphi-Quellcode:
if Pos('-', s) = 0 then
begin
  //Anweisung wenn String das Zeichen "-" nicht enthält.
end;

Der.Kaktus 8. Aug 2008 18:35

Re: Durchsuchen nach einem gewissen String
 
Zitat:

Zitat von toms
Hallo, warum verwendest du nicht Pos() ?

Ist OK, POS wuerde ich auch nehmen..aber!!! was ist falsch an seinem Code?..seh nix!!!????

Fussball-Robby 8. Aug 2008 18:50

Re: Durchsuchen nach einem gewissen String
 
Zitat:

Zitat von Der.Kaktus
Zitat:

Zitat von toms
Hallo, warum verwendest du nicht Pos() ?

Ist OK, POS wuerde ich auch nehmen..aber!!! was ist falsch an seinem Code?..seh nix!!!????

Zitat:

Delphi-Quellcode:
s:= '130 - 140';
for i:=1 to length(s) do
if s[i]<>'-' then
begin
//Anweisung wenn String das Zeichen - nicht enthält.
end;

Hier wird das auskommentierte jedes mal ausgeführt, wenn das zeichen <> - ist. Es soll aber nur ausgeführt werden, wenn das - Zeichen garnicht drinnen ist, darum muss man entweder eine Boolean-Variable nehmen oder eben Pos verwenden.


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:47 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