You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PowerShell中用正则替换ValidateSet实现*.dom.net域名验证

PowerShell 域名参数的正则通配验证方案

直接用[ValidatePattern]属性替换原来的[ValidateSet],就能实现你要的通配式验证。下面是适配你需求的完整代码:

[Parameter(Mandatory, Position = 2)]
[ValidatePattern("^(abc\.white|abc\.black|[a-z]+\.dom\.net)$")]
[string] $domain

正则规则说明:

  • ^ 和 $ 强制匹配整个字符串,防止出现类似fr.dom.net.abc这种不完整的域名通过验证
  • abc\.white|abc\.black 保留你原来需要的两个固定域名(正则里.是通配符,必须用\.转义才能匹配实际的点号)
  • [a-z]+ 匹配一个或多个小写字母作为dom.net的前缀,如果你需要支持大写字母、数字或连字符,把这部分改成[a-zA-Z0-9-]+即可

可选配置:忽略大小写

如果不需要区分域名的大小写,可以给ValidatePattern加上IgnoreCase参数:

[Parameter(Mandatory, Position = 2)]
[ValidatePattern("^(abc\.white|abc\.black|[a-z]+\.dom\.net)$", IgnoreCase = $true)]
[string] $domain

测试示例:

  • 合法输入:abc.white、fr.dom.net、bg.dom.net、SK.dom.net(加IgnoreCase后)
  • 非法输入:abc.gray、fr.dom.com、frdom.net

内容的提问来源于stack exchange,提问作者Purclot

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.17 06:54:59