我有一個變量當前的服務器時間,我需要用我的變量中存在的值替換AT=2013/07/31-10:08:41
。我如何在Perl中替換它?如何在perl中訪問和替換?
get(J=tesr,T=Bp,Act=A_Ti,AT=2013/07/31-10:08:41);
我有一個變量當前的服務器時間,我需要用我的變量中存在的值替換AT=2013/07/31-10:08:41
。我如何在Perl中替換它?如何在perl中訪問和替換?
get(J=tesr,T=Bp,Act=A_Ti,AT=2013/07/31-10:08:41);
是的,我知道替代操作符..但在這種情況下AT = 2013/07/31-10:08:41將不會是恆定的..每次我hv獲取AT的值並進行替換。如何獲取是我想知道的! – user1954970
如果這是一個字符串(也許從一個配置文件),這個工程:
use warnings;
use strict;
my $string = 'get(J=tesr,T=Bp,Act=A_Ti,AT=2013/07/31-10:08:41);';
$string =~ /AT=(.+)\);/;
my $new_time = 'new_time';
$string =~ s/$1/$new_time/;
print $string;
當然,你有你的服務器的時間,以取代「NEW_TIME」。下次,請先檢查拼寫。
這是利用設置在另一個變量($ NEW_TIME在這種情況下),一次更換AT值
my $str = "get(J=tesr,T=Bp,Act=A_Ti,AT=2013/07/31-10:08:41);";
my $new_time = "2013/08/01-02:05:24";
$str =~ s/(AT=)(\d{4}\/(0[1-9]|1[0-2])\/([0-2][1-9]|3[0-1])-([0-1][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9])/$1$new_time/g;
print "$str\n";
http://stackoverflow.com/questions/17927136/how-to的第一天-substitute-dates-in-perl/17927285#17927285 – RobEarl