SORU
22 AĞUSTOS 2008, Cuma


Nasıl orijinal tutarken bir dize üzerinde bir Perl değiştirme yapabilirim?

Perl, bir dize düzenli ifade kullanarak bir yedek gerçekleştirmek ve farklı bir değişken değeri saklamak, orijinal değiştirmeden için iyi bir yolu nedir?

Ben genelde kopya dizesi için yeni bir değişken daha sonra bağlamak için s/// düzenli yapıyor yerine yeni bir dize, ama merak ediyordum da ... orada daha iyi bir yolu?

$newstring = $oldstring;
$newstring =~ s/foo/bar/g;

CEVAP
22 AĞUSTOS 2008, Cuma


Bu her zaman orijinal değiştirmeden bir dize değiştirilmiş bir kopyasını almak için kullandığım deyim vardır:

(my $new = $original) =~ s/foo/bar/;

Perl 5.14.0 ya da geç, /r non-destructive substitution modifier: yeni kullanabilirsiniz

my $new = $old =~ s/foo/bar/r; 

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Bart Baker

    Bart Baker

    1 Aralık 2006
  • Glyn Dewis

    Glyn Dewis

    25 AĞUSTOS 2007
  • PCDIY

    PCDIY

    16 AĞUSTOS 2013