SORU
21 ŞUBAT 2010, Pazar


Nasıl Perl ile bir dizide düzenli yakalar saklayabilir miyim?

Perl düzenli kullanmaya çalışıyorum. Merak ediyordum ne varsa, bir dizi ifadeye uyan tüm saklamak mümkün olmadığını? Aşağıdaki kullanabilirim biliyorum: ($1,...,$n) = m/expr/g; ama bu sadece eğer aradığınız eşleşme sayısını biliyorsanız kullanılabilir gibi görünüyor. my @array = m/expr/g; denedim ama çalışmak için görünmüyor.

Yardımlarınız için teşekkürler!

CEVAP
21 ŞUBAT 2010, Pazar


Eğer küresel bir Maç (/g) yapıyorsan listesi bağlamda düzenli çekilen tüm eşleri dönecektir. Sadece yapın:

my @matches = ( $str =~ /pa(tt)ern/g )

Örneğin: bu komut

perl -le '@m = ( "foo12gfd2bgbg654" =~ /(\d )/g ); print for @m'

Verdiği çıktı:

12
2
654

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Ayite Atiwoto (superjiffrey)

    Ayite Atiwot

    29 EYLÜL 2010
  • mist64

    mist64

    30 Mayıs 2006
  • Vladimir Jenko

    Vladimir Jen

    1 Mart 2010