我有一個Perl程序,它在配置文件中存儲正則表達式。他們在形式:Perl中正則表達式的雙重插值
regex = ^/d+$
在其他地方,正則表達式從文件解析,並存儲在一個變量 - $regex
。 然後,我在檢查正則表達式時使用該變量,例如
$lValid = ($valuetocheck =~ /$regex/);
我希望能夠在配置文件中包含perl變量,例如,
regex = ^\d+$stored_regex$
但我不知道該怎麼做。
當Perl解析正則表達式時,它們會被解釋兩次。 首先擴展變量,然後解析正則表達式本身。
我需要的是一個三階段過程: 先插值$regex
,然後內插它包含的變量,然後解析生成的正則表達式。 前兩個插值都需要「正則表達式意識」。例如他們應該知道該字符串包含$
作爲錨等...
任何想法?
它是優雅的解決方案。 – 2009-02-09 13:02:02