之前我们通过ValidateSet来作为参数的智能提示,其实它也起到了对参数输入合规性的检查。因为ValidateSet是规定了一个输入参数的范围,不在这个范围内的参数,一是不能智能提示,另外,即便是输入了,它也无法通过函数的输入参数合规性检查,从而程序无法继续执行。

那么既然ValidateSet是以一个集合的形式来检查输入参数,那么说ValidatePattern是以正则表达式规则来对输入参数进行合规性检查,那洪哥相信您一定能理解了。下面我们看一下怎么用正则表达式对输入参数进行合规性检查:

function Get-ZIPCode {

    param(

        [ValidatePattern('^\d{6}$')]

        [String]

        $ZIP

    )

    “Here is the ZIP code you entered: $ZIP”

}

上面是一个对输入邮编进行检查的函数,[ValidatePattern('^\d{6}$')]表示使用'^\d{6}$'这个正则表达式来检查输入参数的合规性。“^\d{6}$”这个正则表达式的表示是6位数字,这就是邮编的格式。

所以,通过ValidatePattern这个指令,只要你懂正则表达式,那么你就可以对输入参数的合规进行强大的检查,从而大大提高函数的安全性。

关于PowerShell函数使用正则表达式来对输入参数进行合规性检查,本文就介绍这么多,希望对您有所帮助,谢谢!    

03-14 14:56