VerCompare() [v1.1.36+]

Vergleicht zwei Versionszeichenketten.

Ergebnis := VerCompare(VersionA, VersionB)

Parameter

VersionA

Die erste zu vergleichende Versionszeichenkette.

VersionB

Die zweite zu vergleichende Versionszeichenkette, der optional einer der folgenden Operatoren vorangestellt werden kann: <, <=, >, >= oder =.

Rückgabewert

Wenn VersionB mit einem Operatorsymbol beginnt, gibt diese Funktion 1 (true) oder 0 (false) zurück.

Andernfalls gibt diese Funktion folgendes zurück, um die Beziehung zwischen VersionA und VersionB anzugeben:

Um eine bestimmte Beziehung zwischen den beiden Zeichenketten zu überprüfen, vergleichen Sie das Ergebnis mit 0. Zum Beispiel:

a_kleiner_als_b := VerCompare(a, b) < 0
a_größer_gleich_b := VerCompare(a, b) >= 0

Bemerkungen

Versionszeichenketten werden nach denselben Regeln wie #Requires verglichen.

Diese Funktion sollte Versionszeichenketten gemäß Semantic Versioning 2.0.0 korrekt vergleichen, aber die Parameter müssen nicht unbedingt gültige SemVer-Zeichenketten sein.

Diese Funktion kann in einer Sort-Rückruffunktion verwendet werden.

#Requires, Sort

Beispiele

Prüft die verwendete Version von AutoHotkey.

if VerCompare(A_AhkVersion, ">=1.1.36.00")
    MsgBox Diese Version hat VerCompare als interne Funktion.
else
    MsgBox Diese Version ist kleiner als 1.1.36.00.

Zeigt den Vergleich mit Vorabversionen.

MsgBox % VerCompare("2.0-a137", "2.0-a136")  ; Gibt 1 zurück
MsgBox % VerCompare("2.0-a137", "2.0")  ; Gibt -1 zurück
MsgBox % VerCompare("10.2-beta.3", "10.2.0")  ; Gibt -1 zurück

Zeigt eine Bereichsprüfung.

MsgBox % VerCompare("2.0.1", ">=2.0") && VerCompare("2.0.1", "<2.1")  ; Gibt 1 zurück