Delphi-PRAXiS
Seite 2 von 3     12 3      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi "If not" bei string realisieren (https://www.delphipraxis.net/108710-if-not-bei-string-realisieren.html)

mkinzler 18. Feb 2008 10:37

Re: "If not" bei string realisieren
 
Delphi-Quellcode:
if s <> 'xxx'
bewirkt das gleiche wie
Delphi-Quellcode:
if not (s = 'xxx')

chest3rs 18. Feb 2008 10:39

Re: "If not" bei string realisieren
 
Oh :roll:,

alles klar, wusste ich nicht, dass das auch so geht.

Danke

SirThornberry 18. Feb 2008 10:39

Re: "If not" bei string realisieren
 
er meint das man klammern muss. Ansonsten wird versucht die operatoren auf die Variable anzuwenden und das klappt nicht. Durch das Klammern wird erst das in der Klammer aufgelöst und da kommt ein bool raus. Und diesen kann man mit logischen und binären operatoren handhaben. String1 or String2 macht ja auch keinen Sinn, was soll da schon rauskommen? alle Bytes so weit möglich miteinander irgendwie vermixen?!

o0o 18. Feb 2008 10:49

Re: "If not" bei string realisieren
 
ach gott ihr seid ja heut mal aktiv:D
ich war nur was essn und soviele posts hier...klasse ich liebe euch:)

also damit:
Delphi-Quellcode:
if not (s = 'xxx')
klappt es einwandfrei...genauso wie ich es wollte...

ich danke mal allen die sich hier am thread beteidigt haben...da o0o

himitsu 18. Feb 2008 10:57

Re: "If not" bei string realisieren
 
Zitat:

Zitat von o0o
klappt es einwandfrei...genauso wie ich es wollte...

hast du dir auch mal alle Beiträge komplett angesehn?

(da hat wer am Ende seines Beitrags nette Funktion erwähnt :zwinker: )

peschai 18. Feb 2008 11:00

Re: "If not" bei string realisieren
 
... und was ist mit der idee von Sharky mit stringlist und indexof (bsp peschai) ?

himitsu 18. Feb 2008 11:24

Re: "If not" bei string realisieren
 
nja, abgesehn davon daß man dafür erstmal 'ne Klasse (TStringList) erstellen, befüllen und am Ende wieder freigeben muß,
diese Klasse nicht unbedingt sooo schnell ist
und sie auch etwas Speicher verbraucht ...

ist da nix einzuwenden,

aber wie gesagt, es gibt praktische/fertige Funktionen :angel:

Delphi-Quellcode:
if not MatchText(domain, ['xxx.com', 'xxx-xxx.com', 'x.com']) then ...


const MyList = Array[0..2] of String = ('xxx.com', 'xxx-xxx.com', 'x.com');
if not MatchText(domain, MyList) then ...

und wer die vielen ADD's nicht mag, könnte es auch zusammen übergeben und über die Trennzeichen (#13, #10 oder #13#10 ... CRLF) abgrenzen.
Delphi-Quellcode:
var
  j1:TStringlist;
begin
  j1 := TStringList.Create;
  try
    j1.Text := 'xxx.com'#10'xxx-xxx.com'#10'x.com';
    if j1.IndexOf(domain) < 0 then
      begin
        // ... tue etwas ...
      end;
  finally
    j1.Free;
  end;
end;

o0o 18. Feb 2008 13:32

Re: "If not" bei string realisieren
 
hmm jo was isn eigendlich matchtext?
hab mal gesucht und gefunden:
http://www.delphipraxis.net/internal...ight=matchtext

verstehe leider nicht wie es funkt...0_o
waere nice wenn mir jemand auf die spruenge helfen koennte^^

da o0o

marabu 18. Feb 2008 13:39

Re: "If not" bei string realisieren
 
Hallo,

vielleicht kannst du es so umsetzen:

Delphi-Quellcode:
// if not MatchText(domain, ['xxx.com', 'xxx-xxx.com', 'x.com']) then ...
if {StrUtils.}AnsiIndexText(domain, ['xxx.com', 'xxx-xxx.com', 'x.com']) < 0 then ...
Freundliche Grüße

himitsu 19. Feb 2008 08:26

Re: "If not" bei string realisieren
 
jupp, intern macht MatchText ja auch nichts anderes, als IndexText aufzurufen :stupid:

es ist aber auch schon in meinem D7 enthalten (obwohl die OH es noch nicht kennt).
nja, jedenfalls kennt es die Ansi-Version AnsiMatchText (auch Unit StrUtils).


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:49 Uhr.
Seite 2 von 3     12 3      

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