If Var is [not] Typ

Überprüft, ob der Inhalt der Variable numerisch, großgeschrieben und so weiter ist.

if Var is Typ
if Var is not Typ

Parameter

Var

Name der Variable.

Typ

Siehe Bemerkungen.

Bemerkungen

Unterstützte Typen:

integer Wahr, wenn Var nicht leer ist und eine rein-numerische Zeichenkette (dezimal oder hexadezimal) ohne Dezimalpunkt enthält. Davor- oder dahinterliegende Leer- und Tabulatorzeichen sind erlaubt. Die Zeichenkette kann mit einem Plus- oder Minuszeichen beginnen.
float Wahr, wenn Var nicht leer ist und eine Floating-Point-Zahl enthält; also eine rein-numerische Zeichenkette mit Dezimalpunkt. Davor- oder dahinterliegende Leer- und Tabulatorzeichen sind erlaubt. Die Zeichenkette kann mit einem Pluszeichen, Minuszeichen oder Dezimalpunkt beginnen.
number Wahr, wenn Var einen Integer oder eine Floating-Point-Zahl enthält (beide sind oben beschrieben).
digit Wahr, wenn Var leer ist oder nur die Zahlen von 0 bis 9 enthält. Folgende Zeichen sind nicht erlaubt: Leerzeichen, Tabulatorzeichen, Plus- und Minuszeichen, Dezimalpunkte, Hexadezimalzahlen und 0x-Präfix.
xdigit Hexadezimale Zahlen: Das gleiche wie digit, außer dass die Zeichen A bis F (groß- oder kleingeschrieben) auch erlaubt sind. [v1.0.44.09+]: Der 0x-Präfix wird toleriert, falls vorhanden.
alpha Wahr, wenn Var leer ist oder nur alphabetische Zeichen enthält. Falsch, wenn Zahlen, Leerzeichen, Tabulatorzeichen, Punkte oder andere nicht-alphabetische Zeichen in der Zeichenkette sind. Wenn Var beispielsweise ein Leerzeichen gefolgt von einem Buchstaben enthalten würde, wird die Variable nicht als alpha angesehen.
upper Wahr, wenn Var leer ist oder nur Großbuchstaben enthält. Falsch, wenn Zahlen, Leerzeichen, Tabulatorzeichen, Punkte oder andere nicht großgeschriebene Zeichen in der Zeichenkette sind.
lower Wahr, wenn Var leer ist oder nur Kleinbuchstaben enthält. Falsch, wenn Zahlen, Leerzeichen, Tabulatorzeichen, Punkte oder andere nicht kleingeschriebene Zeichen in der Zeichenkette sind.
alnum Das gleiche wie alpha, außer dass die Zeichen 0 bis 9 auch erlaubt sind.
space Wahr, wenn Var leer ist oder nur Leerraumzeichen enthält, die folgende Zeichen sein können: Leerzeichen (%A_Space%), Tabulatorzeichen (%A_Tab% oder `t), LF-Zeichen (`n), CR-Zeichen (`r), vertikaler Tabulator (`v) und Seitenvorschub (`f).
time

Wahr, wenn Var einen gültigen Zeitstempel enthält, entweder alles oder den führenden Teil des YYYYMMDDHH24MISS-Formats. Zum Beispiel würde eine 4-stellige Zeichenkette wie 2004 als gültig angesehen werden. Mit StringLen kann festgestellt werden, ob zusätzliche Zeitkomponenten vorhanden sind.

Jahre älter als 1601 werden nicht als gültig angesehen, weil das Betriebssystem sie generell nicht unterstützt. Das höchste als gültig angesehenes Jahr ist 9999.

Das Wort DATE könnte man als Ersatz für das Wort TIME verwenden - mit dem gleichen Ergebnis.

Hinweis: Die Operatoren "between", "is", "in" und "contains" werden in Ausdrücken nicht unterstützt.

[AHK_L 42+]: Das Gebietsschema des Betriebssystems wird ignoriert, sofern StringCaseSense Locale nicht verwendet wurde.

Siehe auch

%A_YYYY%, SetFormat, FileGetTime, IfEqual, if Var in/contains Vergleichsliste, if Var between, StringLen, IfInString, StringUpper, EnvAdd, Blöcke, Else

Beispiel

if var is float
    MsgBox, %var% ist eine Floating-Point-Zahl.
else if var is integer
    MsgBox, %var% ist ein Integer.
if var is time
    MsgBox, %var% ist auch ein gültiger Zeitstempel.