我一直在寻找一个解决方案,我的问题和哈希似乎是阅读几篇文章后的答案,但我不确定如何实现这个我的要求,任何人都可以建议如何甚至更好的选择?引用变量中的变量 - 哈希?
在我的代码中,变量$host
正在根据数据库中的值进行设置。我遍历这些值,每次更改$host
的值。
我想丢弃一些类型的主机名,并确定哪些主机丢弃我读取在一个用户可配置的文件,该文件包含该排除的Perl正则表达式。即配置文件中有一行
EXCLUDE=\d+DAT\d+,\d+INF\d+
我当时想建立Perl的正则表达式匹配(逻辑OR),即
if ($host =~ m/\d+DAT\d+/ || $host =~ m/\d+INF\d+/) {
# do something
}
目前我的代码是硬接线如在上面的例子,但是如何在读取配置文件后动态构造Perl正则表达式?
我已经读取配置文件到一个数组,并将从那里开始。上面的代码需要落得这样的:
if ($exclude clause) {
# do something
}
这是我如何着手实现从阵列读取:
for ($i = 1; $i < @conf; $i++) {
$exclude_clause .= "$host =~/" . @conf[$i] . "/ || ";
}
$exclude_clause =~ s/ \|\| $//;
问题是$exclude_clause
中引用$host
。除了$host
之外,我的正则表达式字符串是内置的。
到底是什么问题?这是你试图运行的实际代码吗? – lmsteffan