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

时间:2017-07-10 09:11:07

标签: powershell

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

if ([string]::IsNullOrEmpty($version))
{
    $request += "/" + $version
}

如果不符合条件,如何检查?

6 个答案:

答案 0 :(得分:45)

if (-not ([string]::IsNullOrEmpty($version)))
{
    $request += "/" + $version
}

您还可以使用!替代-not

答案 1 :(得分:33)

您不一定要使用[string] ::前缀。这有效:

if ($version)
{
    $request += "/" + $version
}

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

答案 2 :(得分:8)

与许多其他编程和脚本语言一样,您可以通过在条件前添加!来实现此目的

if (![string]::IsNullOrEmpty($version))
{
    $request += "/" + $version
}

答案 3 :(得分:5)

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

[CmdletBinding()]
Param (
    [parameter(mandatory=$true)]
    [ValidateNotNullOrEmpty()]
    [string]$Version
)

答案 4 :(得分:1)

我将$ Version定义为以

开头的字符串
[string]$Version

如果是参数,则可以使用Samselvaprabu发布的代码 或者,如果您不希望向用户显示错误,则可以执行类似的操作

while (-not($version)){
    $version = Read-Host "Enter the version ya fool!"
}
$request += "/" + $version

答案 5 :(得分:0)

if(!$ variablename){写主机“变量为空”}

我希望这个简单的答案能够解决问题。 Source