我想聲明一個常量作爲一個襯墊這樣的:的毗連正則表達式與常量聲明字符串作爲oneliner
use constant HOME_SCRIPT => "/home/george/". $0 =~ /(.*)\.pl/;
的問題是,這將返回:/home/george/1
。即它連接正則表達式匹配的數量。
我想:
use constant HOME_SCRIPT => ("/home/george/"). $0 =~ /(.*)\.pl/;
use constant HOME_SCRIPT => "/home/george/". ($0 =~ /(.*)\.pl/);
但同樣的結果。
是否有可能爲此創建一個oneliner?
+1這個工程。你能解釋第一個是如何工作的嗎? – Cratylus
@Cratylus它需要列表中的第一個元素,「(list)[0]」,所以正則表達式停留在列表上下文中,而不是強制標量上下文的。 –