Ein Leitfaden für Anfänger zum Vergleichen von Werten in Perl

click fraud protection

Perl Vergleichsoperatoren können für neue Perl-Programmierer manchmal verwirrend sein. Die Verwirrung ergibt sich aus der Tatsache, dass Perl tatsächlich zwei Sätze von Vergleichsoperatoren hat - einen zum Vergleichen numerische Werte und einer zum Vergleichen von ASCII-Werten (String American Standard Code for Information Interchange).

Da Vergleichsoperatoren normalerweise verwendet werden, um den logischen Programmfluss zu steuern und wichtige Entscheidungen zu treffen, verwenden Sie die Ein falscher Operator für den Wert, den Sie testen, kann zu bizarren Fehlern und stundenlangem Debuggen führen, wenn Sie nicht vorsichtig sind.

Vergessen Sie nicht zu lesen, was ganz unten auf dieser Seite steht, damit Sie sich in letzter Minute an einige Dinge erinnern können.

Gleich, nicht gleich

Die einfachsten und wahrscheinlich am häufigsten verwendeten Vergleichsoperatoren testen, ob ein Wert einem anderen Wert entspricht. Wenn die Werte gleich sind, gibt der Test true zurück, und wenn die Werte nicht gleich sind, gibt der Test false zurück.

instagram viewer

Zum Testen der Gleichheit von zwei numerisch Werte verwenden wir den Vergleichsoperator ==. Zum Testen der Gleichheit von zwei Zeichenfolge Werte verwenden wir den Vergleichsoperator Gl (Gleich).

Hier ist ein Beispiel für beides:

if (5 == 5) {print "== für numerische Werte \ n"; }
if ('moe' eq 'moe') {print "eq (EQual) für Zeichenfolgenwerte \ n"; } 

Das Testen auf das Gegenteil, nicht gleich, ist sehr ähnlich. Denken Sie daran, dass dieser Test zurückgegeben wird wahr wenn die getesteten Werte sind nicht gleich zueinander. Um zu sehen, ob zwei numerisch Werte sind nicht gleich zueinander verwenden wir den Vergleichsoperator !=. Um zu sehen, ob zwei Zeichenfolge Werte sind nicht gleich zueinander verwenden wir den Vergleichsoperator ne (Nicht gleich).

if (5! = 6) {print "! = für numerische Werte \ n"; }
if ('moe' ne 'curly') {print "ne (nicht gleich) für Zeichenfolgenwerte \ n"; } 

Größer als, größer als oder gleich

Nun schauen wir uns das an größer als Vergleichsoperatoren. Mit diesem ersten Operator können Sie testen, ob ein Wert größer als ein anderer Wert ist. Um zu sehen, ob zwei numerisch Werte sind größer als einander, wir verwenden den Vergleichsoperator >. Um zu sehen, ob zwei Zeichenfolge Werte sind größer als einander, wir verwenden den Vergleichsoperator gt (Größer als).

if (5> 4) {print "> für numerische Werte \ n"; }
if ('B' gt 'A') {print "gt (Größer als) für Zeichenfolgenwerte \ n"; } 

Sie können auch testen für größer als oder gleich wie, was sehr ähnlich aussieht. Denken Sie daran, dass dieser Test zurückkehrt wahr wenn die getesteten Werte gleich sind oder wenn der Wert links größer als der Wert rechts ist.

Um zu sehen, ob zwei numerisch Werte sind größer oder gleich, wir verwenden den Vergleichsoperator >=. Um zu sehen, ob zwei Zeichenfolge Werte sind größer oder gleich, wir verwenden den Vergleichsoperator ge (Größer als gleich).

if (5> = 5) {print "> = für numerische Werte \ n"; }
if ('B' ge 'A') {print "ge (größer als gleich) für Zeichenfolgenwerte \ n"; } 

Weniger als, weniger als oder gleich

Es gibt verschiedene Vergleichsoperatoren, mit denen Sie den logischen Ablauf Ihrer Perl-Programme bestimmen können. Wir haben bereits den Unterschied zwischen den numerischen Perl-Vergleichsoperatoren und den Perl-Zeichenfolgenvergleichsoperatoren erörtert, was bei neuen Perl-Programmierern zu Verwirrung führen kann. Wir haben auch gelernt, wie man erkennt, ob zwei Werte gleich oder nicht gleich sind, und wir haben gelernt, wie man erkennt, ob zwei Werte größer oder gleich sind.

Schauen wir uns das an weniger als Vergleichsoperatoren. Mit diesem ersten Operator können Sie testen, ob ein Wert vorhanden ist weniger als ein anderer Wert. Um zu sehen, ob zwei numerisch Werte sind weniger als einander verwenden wir den Vergleichsoperator <. Um zu sehen, ob zwei Zeichenfolge Werte sind weniger als einander verwenden wir den Vergleichsoperator lt (Weniger als).

if (4 <5) {print "
if ('A' lt 'B') {print "lt (Less Than) für Zeichenfolgenwerte \ n"; } 

Sie können auch testen für, weniger als oder gleich, was sehr ähnlich aussieht. Denken Sie daran, dass dieser Test zurückgegeben wird wahr wenn die getesteten Werte gleich sind oder wenn der Wert links kleiner als der Wert rechts ist. Um zu sehen, ob zwei numerisch Werte sind weniger als oder gleich einander verwenden wir den Vergleichsoperator <=. Um zu sehen, ob zwei Zeichenfolge Werte sind weniger als oder gleich einander verwenden wir den Vergleichsoperator le (Weniger als gleich).

 if (5 <= 5) {print "<= für numerische Werte \ n"; }
if ('A' le 'B') {print "le (Less-than Equal-to) für Zeichenfolgenwerte \ n"; } 

Weitere Informationen zu Vergleichsoperatoren

Wenn wir davon sprechen, dass Zeichenfolgenwerte gleich sind, beziehen wir uns auf ihre ASCII-Werte. Die Großbuchstaben sind also technisch gesehen kleiner als die Kleinbuchstaben. Je höher der Buchstabe im Alphabet ist, desto höher ist der ASCII-Wert.

Stellen Sie sicher, dass Sie Ihre ASCII-Werte überprüfen, wenn Sie versuchen, logische Entscheidungen basierend auf Zeichenfolgen zu treffen.

instagram story viewer