中的perldoc這是實例發現:
$object->expect(15, '-re', "$str");
我要添加選項「我」的比賽。這是行不通的:
$object->expect(15, '-re', qr\$str\i);
我一定要使用此格式:
$exp->expect($timeout, [ qr/$str/i, sub {}], $shell_prompt);
中的perldoc這是實例發現:
$object->expect(15, '-re', "$str");
我要添加選項「我」的比賽。這是行不通的:
$object->expect(15, '-re', qr\$str\i);
我一定要使用此格式:
$exp->expect($timeout, [ qr/$str/i, sub {}], $shell_prompt);
您可以嵌入指令到正則表達式本身:
$object->expect(15, '-re', "(?i)$str");
'qr/foo/i'實際上是'(?i:foo)'。 '(?i)foo'通常是等價的,但它依賴於Expect將模式嵌入'(?:...)'來限制不區分大小寫的範圍。 – ikegami
它將依賴於不包含不匹配的右括號的$ str。我想我們必須首先假定它是一個格式正確的正則表達式,或者依靠其餘的代碼來捕捉錯誤。 –
'qr \ $ str \ i'是反斜槓的錯字嗎? – toolic
沒錯。對不起,錯字 –