检查字符串是不是NULL还是EMPTY

Nil*_*iya 36 powershell

在下面的代码中,我需要检查版本字符串是否为空,然后将其值附加到请求变量.

if ([string]::IsNullOrEmpty($version))
{
    $request += "/" + $version
}
Run Code Online (Sandbox Code Playgroud)

如果有条件,如何检查?

Mar*_*agg 56

if (-not ([string]::IsNullOrEmpty($version)))
{
    $request += "/" + $version
}
Run Code Online (Sandbox Code Playgroud)

您也可以使用它!作为替代-not.


Pal*_*Due 38

您不一定要使用[string] ::前缀.这以同样的方式工作:

if ($version)
{
    $request += "/" + $version
}
Run Code Online (Sandbox Code Playgroud)

null或空字符串的变量求值为false.

  • 注意这种方法,如果您的变量为 0,您将得到 False。 (3认同)
  • @Fábio Galera:是的,我假设 $version 包含一个字符串,但这是问题的一部分。 (2认同)

ruf*_*er7 9

与许多其他编程和脚本语言一样,您可以通过!在条件前添加来完成此操作

if (![string]::IsNullOrEmpty($version))
{
    $request += "/" + $version
}
Run Code Online (Sandbox Code Playgroud)


Sam*_*abu 6

如果变量是一个参数,那么您可以使用如下的高级函数参数绑定来验证非null或空:

[CmdletBinding()]
Param (
    [parameter(mandatory=$true)]
    [ValidateNotNullOrEmpty()]
    [string]$Version
)
Run Code Online (Sandbox Code Playgroud)