推 kornelius:你的方法也不錯 :) thanks 61.223.100.79 09/22 01:28
※ 引述《kornelius (Kornelius)》之銘言:
: 的確,若只是單純使用 s/foo/$1/ee 是可
: 不過若是 c$1d 這類,則不屬 statement,所以 double eval 無法使用
: 不過,你想得到不用整塊 eval 的方法嗎? @@?
順便提供一下不用 eval 區塊的另一個方法 :)
my $string = 'a/bcde/f';
my $pattern = '^a\/(.*)';
my $replace = sub { "c$1d" };
$string =~ s/$pattern/&$replace/e;
print $string;
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.230.172.181
※ 編輯: LiloHuang 來自: 61.230.172.181 (09/22 01:27)