|
|||||||||||||||||||||||||||
Helt på en linie er det ikke, men hvis du alligevel har de strenge du
vil erstatte som nøgler i et hash, og du vil erstatte med værdien fra
hashet, så kan du bruge:
my $regex = ('(' . join('|', map {quotemeta($_)} keys(%hash)) . ')'
);
$text =~ s/$regex/$hash{$1}/ge;
I dit tilfælde har du så %hash = ( Jan=>'01', Feb=>'02', Mar=>'03',
...);
Christian Sandfeld wrote:
>
> Lad mig starte med at sige at jeg er en "Perl Newbiew", så jeg unskylder på forhånd hvis spørgsmålet er banalt ;-)
>
> Er der nogen der kan fortælle mig hvordan jeg "erstatter" flere ting i samme variabel på én linie ?
>
> Hvordan får jeg f.eks. dette over på én linie:
> $month =~ s/Jan/01/g;
> $month =~ s/Feb/02/g;
> $month =~ s/Mar/03/g;
>
> Mvh.
>
> Christian
--
René Seindal (sslug@sslug) http://www.seindal.dk/rene/
|
||||||||||||||
|
||||||||||||||