3

$next括弧を含む可能性のある文字列を含む変数があります。たとえばtrna(tgc)、この一致するステートメントを作成したいif ($data[$i][2]=~/$next/){ ..}のですが、実際にはtrueであっても常にfalseを返します。私はこれを試しました、if ($data[$i][2]=~/trnA\(tgc\)/){ ..}そしてそれは働きます。私の質問は:各括弧の前の「\」を変数に挿入する方法は$next

4

2 に答える 2

5

メタ文字を引用する必要があります。

これを試して。

print "match" if( $var1 =~ /\Q$var2\E/ );
于 2012-06-20T11:08:13.687 に答える
4

私はあなたが欲しいと思いますquotemeta

$next = "trna(tgc)";
$search = quotemeta($next);
if ($data[$i][2]=~/$search/){ 
    //..
}
于 2012-06-20T11:07:54.937 に答える