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

PowerShell中如何在switch语句中使用列表简化条件判断

PowerShell Switch多条件判断简化方案

针对你想简化Switch语句中多-or条件的需求,有两种简洁的实现方式,完全保留Switch结构,不用改成If语句:

方法1:使用-in运算符(脚本块形式)

利用PowerShell 3.0及以上版本支持的-in运算符,直接判断当前值是否在指定集合中,替代多个-or:

Switch ($a)
{
    { $_ -in "option1", "option2" } { 执行相同操作... }
    # 后续多选项子句示例
    { $_ -in "option3", "option4", "option5" } { 执行另一操作... }
}

方法2:直接指定多值Case(最简洁)

Switch本身支持将多个匹配值用逗号分隔作为单个Case,PowerShell会自动匹配其中任意一个值,写法更清爽:

Switch ($a)
{
    "option1", "option2" { 执行相同操作... }
    # 4-5个选项的子句示例
    "option3", "option4", "option5", "option6" { 执行对应操作... }
    # 单值Case也可以正常写
    "option7" { 执行单独操作... }
}

这两种方法都能大幅减少代码冗余,尤其是方法2,完全不需要额外的逻辑判断语法,最适合你后续多子句、多选项的场景。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.24 16:22:04