PowerShell函数使用正则表达式来对输入参数进行合规性检查


关键词

PowerShell函数 正则表达式 参数输入

摘要

本文介绍在自定义PowerShell函数时,输入的参数是否合法可以通过正则表达式来进行约束。正则表达式来约束输入参数,将使用ValidatePattern指令。

之前我们通过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函数使用正则表达式来对输入参数进行合规性检查,本文就介绍这么多,希望对您有所帮助,谢谢!    

 

文章的版权

洪哥写文章很苦逼,如果本文对您略有帮助,点击感兴趣的广告支持洪哥!万分感谢!本文属于“洪哥笔记”原创文章,转载请注明来源地址:PowerShell函数使用正则表达式来对输入参数进行合规性检查:http://www.splaybow.com/post/powershell-parameter-regexp.html

关注与收藏

如果您在服务器运维、网络管理、网站或系统开发过程中有任何疑问,洪哥以此为饭碗,请加QQ:115085382!
了解更多好文章,请关注我们的新浪微博和腾讯微博
亲,先存起来,方便以后再看啊!加入收藏夹的话,按Ctrl+D


« PowerShell函数使用枚举变量来作为参数智能提示 PowerShell函数获取输入参数列表($PSBoundParameters) »