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

  • IGN

    IGN

    19 EYLÜL 2006
  • Muse

    Muse

    28 EYLÜL 2006
  • stewmurray47

    stewmurray47

    1 Kasım 2006