【发布时间】:2021-12-31 16:47:25
【问题描述】:
有没有在 Perl 5 中创建 case 或 switch 语句的简洁方法?在我看来,它们应该包括版本 6 的开关..
我需要在脚本中使用这种控制结构,而且我听说您可以导入“开关模块”。但是如何在没有导入的情况下实现它以最小化依赖并获得可移植性?
【问题讨论】:
-
Switch 模块是 Core Perl 的一部分,从 5.8 开始就有,所以不存在依赖问题;但是,它确实有一些错误和限制。有关更多信息,请参阅文档,或者更好的是,升级到 5.10 并获得 switch 语句、智能匹配运算符、说函数、状态变量、许多正则表达式改进、定义或 (//)、堆叠文件测试运算符 (- r -x $file 而不是 -r $file && -x _),以及许多其他改进。
-
@lurks,你可能想选择一个不同的答案。
-
见this perlfaq7 question。 (不要使用 given/when 或 Switch 模块。)
标签: perl switch-statement