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

  • booba1234

    booba1234

    22 Temmuz 2006
  • Jordie Jordan

    Jordie Jorda

    27 Ocak 2008
  • Rickymon Tero

    Rickymon Ter

    1 Ocak 2007