说我有$foo = "bar.baz"
我想使用标量$ foo来查找包含“bar.baz”(字符串中的任何位置)的字符串,但不是$ foo的正则表达式计算版本。
所以行:if( $other =~ m/$foo/ ) ...
不工作,因为正在评估$ foo,以便'。'被评估为任何角色。我该怎么做呢?
答案 0 :(得分:10)
选择一个:
$foo = quotemeta("bar.baz");
if ($other =~ m/\Q$foo/)
(两者实际上是同一件事,只是在不同的时间完成。)