HOWTO · PowerShell

Überprüfen Sie, ob eine Zeichenfolge in PowerShell leer ist

Der Artikel behandelt eine Zeichenfolgenmethode, die in PowerShell verwendet werden kann, um festzustellen, ob eine bestimmte Zeichenfolge null oder leer ist.

Auf dieser Seite

Wir werden in diesem Artikel die Methoden diskutieren, die verwendet werden können, um festzustellen, ob eine bestimmte Zeichenfolge in PowerShell “null” oder leer ist.

Überprüfen Sie, ob eine Zeichenfolge in PowerShell “null” oder “leer” ist

“IsNullOrEmpty” ist eine gängige Skript-/Programmiersprachenmethode zum Überprüfen, ob eine bestimmte Zeichenfolge “leer” oder “null” ist. “null” ist ein Zeichenfolgenwert, der nicht zugewiesen wurde, und eine “leere” Zeichenfolge ist eine Zeichenfolge mit "" oder “String.Empty”.

“IsNullOrEmpty”-Alternativen zum Überprüfen, ob eine Zeichenfolge in PowerShell “null” oder leer ist

Es gibt eine einfache Möglichkeit, die äquivalente Funktion von PowerShell’s “IsNullOrEmpty” durchzuführen. Die folgenden Codeabschnitte können verwendet werden.

Die in der Anweisung angegebene Zeichenfolge ist “null”. Daher sieht die Ausgabe des Codes wie folgt aus.

Beispielcode 1:

PS C:\Users\Test> $str1 = $null
PS C:\Users\Test> if ($str1) { 'not empty' } else { 'empty' }

Ausgabe:

empty

Wenn die Zeichenfolge “leer” ist, ist die Ausgabe immer “leer”.

Beispielcode 2:

PS C:\Users\Test> $str2 = ''
PS C:\Users\Test> if ($str2) { 'not empty' } else { 'empty' }

Ausgabe:

empty

Wenn die Zeichenfolge weder “leer” noch “null” ist, ist die Ausgabe “nicht leer”.

Beispielcode 3:

PS C:\Users\Test> $str3 = ' '
PS C:\Users\Test> if ($str3) { 'not empty' } else { 'empty' }

Ausgabe:

not empty

Es gibt Befehle, um zwei Zeichenfolgen zu vergleichen und festzustellen, ob zwei oder mehr “leer” sind.

PS C:\Users\Agni>  if ($str1 -and $str2) { 'neither empty' } else { 'one or both empty'}

Ausgabe:

one or both empty

Darüber hinaus ist “weder leer” ein möglicher Vergleich, der oben verwendet wird, um zwei deklarierte Zeichenfolgen zu vergleichen. Dies kann als die eindeutigste und prägnanteste Methode zur Verwendung von “IsNullOrEmpty” identifiziert werden.

Neben der oben genannten Methode kann auch die statische Methode “IsNullOrEmpty” in PowerShell verwendet werden.

Verwenden Sie den Operator “-eq”, um in PowerShell zu überprüfen, ob eine Zeichenfolge “null” oder leer ist

Der Operator “-eq” vergleicht zwei Werte auf Gleichheit. Sie können eine Zeichenfolge mit einer leeren Zeichenfolge vergleichen, um festzustellen, ob sie leer ist.

Code:

$str1 = ""
if ($str1 -eq "") {
Write-Host "String is empty"
} else {
Write-Host "String is not empty"
}

Ausgabe:

String is empty

Verwenden Sie RegEx, um in PowerShell zu überprüfen, ob eine Zeichenfolge “null” oder leer ist

Die Muster einer Zeichenfolge können mit regulären Ausdrücken abgeglichen werden. Sie können ein Regex-Muster verwenden, das leere Zeichenfolgen oder nur Leerzeichen entspricht.

Code:

$str4 = "   "
if ($str4 -match "^\s*$") {
Write-Host "String is empty"
} else {
Write-Host "String is not empty"
}

Ausgabe:

String is empty