我用以下行定义了perl变量bestphone:
my $bestphone = (sort {$targets{$b} <=> $targets{$a}} keys %targets)[0];
当这个变量为(时,我得到以下行的错误:
if ((@thing == 1)&&($thing[0] =~ /return '$bestphone';/)) {
错误:
不匹配(在regex中;用m/return中的<--HERE'标记(<--HERE'/在
如何修复此错误?
您可以使用quotemeta来转义$bestphone
中的特殊字符。
例如:
$thing[0] =~ /return 'Q$bestphoneE';/
请删除";"后面的"/"$besrphone=quotemeta$bestphone并重试