1
我碰到這個正則表達式在Perl腳本來了:的Perl:不尋常的正則表達式
$parent_file =~ [email protected]^\Q$CurrentWorkDirForFile\E/@@
當前工作目錄中填充了CWD。
任何人都可以請解釋這個項目是什麼?
我碰到這個正則表達式在Perl腳本來了:的Perl:不尋常的正則表達式
$parent_file =~ [email protected]^\Q$CurrentWorkDirForFile\E/@@
當前工作目錄中填充了CWD。
任何人都可以請解釋這個項目是什麼?
在Perl中,您可以使用(幾乎)任何字符來分隔正則表達式。所以這相當於s/^\Q$CurrentWorkDirForFile\E///
。 \Q
和\E
禁用/啓用對特殊模式元字符的解釋。因此,例如,/\Q+\E/
將匹配字面加號,即使+
是正則表達式中的特殊字符。
您錯過了斜槓'... \ E/@@',這可能是更改分隔符的原因。正則表達式相當於's/^ \ Q $ CurrentWorkDirForFile \ E \ ///',帶有輕微的「傾斜牙籤綜合徵」。 – TLP 2012-04-28 07:18:15
只需一個額外的點:內插發生在解析正則表達式之前,更重要的是,在執行'\ Q .. \ E'之前。這意味着'\ Q .. \ E'不會阻止插值,並會影響任何插值字符串。 – ikegami 2012-04-28 07:18:19