3

次のように、定数をワンライナーとして宣言しようとしています。

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/);
ましたが、同じ結果です。
このためのワンライナーを作成することは可能ですか?

4

2 に答える 2

4
use constant HOME_SCRIPT => "/home/george/". ($0 =~ /(.*)\.pl/)[0];

また

use constant HOME_SCRIPT => join "", "/home/george/", $0 =~ /(.*)\.pl/;
于 2013-10-19T22:02:44.547 に答える