Perl-如何与'*';烧焦

Perl-如何与'*';烧焦,perl,if-statement,char,wildcard,string-comparison,Perl,If Statement,Char,Wildcard,String Comparison,我正在编写一个从config.ini文件读取的Perl脚本。在该文件中,我希望能够在Users下放置由逗号分隔的特定名称或通配符 例子: Users=Ninja、David、Moshe 或 用户=* 在我的代码中,我想检查users==*是否正确,但我找不到正确的语法 my $UsersToConfig = &ReadIniFile($InifileName , "Users"); if ( $UsersToConfig eq '"*"' )

我正在编写一个从config.ini文件读取的Perl脚本。在该文件中,我希望能够在
Users
下放置由逗号分隔的特定名称或通配符

例子:
Users=Ninja、David、Moshe

用户=*
在我的代码中,我想检查
users==*
是否正确,但我找不到正确的语法

my $UsersToConfig = &ReadIniFile($InifileName , "Users");

if ( $UsersToConfig eq '"*"' ) {
    @safes = @allSafes
}
else {
    @safes = split /,/, $ConfigOnSafes;
};
我也尝试过:
“*”
“\*”
“\*”
“\*”
等等。但是if结果总是错误的

有什么想法吗?

你想要什么

if ( $UsersToConfig eq '*' ) {

ReadIniFile($InifileName,“Users”)
生成字符串
*

字符串文本
'*'
“*”
生成字符串
*


eq
可用于检查两个字符串是否相等。

..eq'*'
应该可以,所以
..eq“*”
也应该可以。什么使你认为它们不是?你有太多的引号。您想要的是
“*”
“*”
,而不是
“*”
。但是如果没有看到
ReadIniFile
,就很难知道你的代码是否能正常工作……这就是我想的,因为某种原因它不能工作:(Perl没有这样的类型。即使它有,
ReadIniFile
也不会返回一个。
use Data::Dumper;{local$Data::Dumper::Useqq=1;warn(Dumper)的输出是什么($UsersToConfig));}