Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Algorithmen, Datenstrukturen und Klassendesign (https://www.delphipraxis.net/78-algorithmen-datenstrukturen-und-klassendesign/)
-   -   Frage zu Strings (https://www.delphipraxis.net/159065-frage-zu-strings.html)

mb1996 12. Mär 2011 16:51

Frage zu Strings
 
Hi Leute,
ich schreibe gerade eine Chat und wollte euch etwas fragen. Mein Server soll nämlich Login-Daten und Nachrichten unterscheiden. So ist meine Idee, dass bei einer Nachricht der Client
Delphi-Quellcode:
'Nachricht: ' + Nachricht
sendent.

Aber wie kann mein Server nur erkennen, ob vorne Nachricht steht?
Vielleicht:
Delphi-Quellcode:
If Nachricht='Nachricht: ' + //Unbekannter String
Könnt ihr mir helfen :?:

mkinzler 12. Mär 2011 16:57

AW: Frage zu Strings
 
Delphi-Quellcode:
If Pos( 'Nachricht:', sNachricht) > 0 then ...

WM_CLOSE 12. Mär 2011 17:15

AW: Frage zu Strings
 
Delphi-Quellcode:
const
  sNachricht='Nachricht:'
if CompareStr(Copy(sText, 1, Length(sNachricht)),sNachricht)=0 then
oder so ähnlich

Zur Erklärung:
Es stellt fest, ob sNachricht wirklich am Anfang steht

mkinzler 12. Mär 2011 17:29

AW: Frage zu Strings
 
Kann man auch mit Pos() erreichen, wenn man auf 1 prüft

himitsu 12. Mär 2011 18:22

AW: Frage zu Strings
 
Delphi-Referenz durchsuchenCompareStr und Delphi-Referenz durchsuchenCompareText ist um zu vergleichen wie sich etwas zueinander verhält
> Result = Integer (-1 0 +1)

Delphi-Referenz durchsuchenSameStr und Delphi-Referenz durchsuchenSameText sind zum direkten
> Result = Boolean

mit Delphi-Referenz durchsuchenStartsStr und Delphi-Referenz durchsuchenStartsText prüf man ob was mit etwas beginnt
> Result = Boolean

mit Delphi-Referenz durchsuchenContainsStr und Delphi-Referenz durchsuchenContainsText schaut man ob etwas enthalten ist
> Result = Boolean

über Delphi-Referenz durchsuchenPos kann man schauen wo sich etwas befindet
> Result = Integer



Vielleicht fällt einem ja ein/zwei Muster auf
- Integer und Boolean (und nun ratet mal, was dem IF zur Auswertung besser gefällt)
- Str und Text

PS: vor nahazu alle diese Funktionen kann man notfalls noch ein Ansi und Wide davorsetzen (Delphi-Referenz durchsuchenAnsiCompareStr)

USchuster 12. Mär 2011 18:41

AW: Frage zu Strings
 
Zitat:

Zitat von himitsu (Beitrag 1087961)
PS: vor nahazu alle diese Funktionen kann man notfalls noch ein Ansi und Wide davorsetzen (Delphi-Referenz durchsuchenAnsiCompareStr)

Ansi... und Wide... erwecken hier den Eindruck es ginge rein nur um den Stringtyp. In unserer Region sollte man jedoch eher zu den Ansi Varianten greifen z.B. wegen der Umlaute, denn das Ergebnis für
Delphi-Quellcode:
SameText('Müller', 'MÜLLER')
und
Delphi-Quellcode:
AnsiSameText('Müller', 'MÜLLER')
ist unterschiedlich.

himitsu 12. Mär 2011 18:46

AW: Frage zu Strings
 
Och, erschreckend ist auch, daß AnsiSameStr in der Unit StrUtils nur als Unicode-Variante existiert und nicht als ANSI, wie man vermuten könnte. :stupid:

Die Unit AnsiStrings sollte man also auch noch beachten.

mb1996 18. Mär 2011 17:46

AW: Frage zu Strings
 
Danke funktioniert


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