Tekil Mesaj gösterimi
Alt 18 Ekim 2007, 19:28   #4
Çevrimdışı
pestpest
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Yanıt: Cevap: veriables problemi




L4roXyL Nickli Üyeden Alıntı
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.
Şimdi bunu yapmanın mantığı şudur;
İlk öncelikle kullanmamız gereken; $var identifier'ı.
$var(*,0) identifier'ı ile, tüm veriable'leri while yardımı ile okutursun.
Bunun için; $var(*,%while-loop'u) şeklinde yaparsın.
Sonra; $($var*,%while*loop'u),2) kayıtlı olan veriable'nin değerini verir.
Ama bu değer sayı değil, harf'de olabilir.
Yani ne bilim; %x değeri pestpest diye bir kelimeye'de atanmış olabilir.
Bunun için $regex kullanarak değer kısmında harf olup olmadığını kontrol edersin;
!$regex($($var(*,%1),2),/[a-z]/g) (Burada eğer, değer kısmında harf geçmiyorsa diyoruz)
Ve ek olarak; değer kısmında sadece rakam geçenleri baza alalım diyoruz;
$regex($($var(*,%1),2),/[1-9]/g) (Değer kısmında rakam bulunuyorsa diyoruz)
Buraya kadar herşey tamam.
Ama bu alias'ı yaparken while kullandığımız için, while'a atadığımız değer ve eşitlenmesi gereken değer sayı olduğu için, komut sonunda gözükecektir.
Bunun için while ile döngü yaptığımız değer'leri ayırıyoruz;
!$istok(%1 %2,$var(*,%1),32) (Eğer %1 %2 değerleri veriablele'lar içinde yoksa diyoruz)
Sonra bunların hepsini $addtok identifier'ı ile yan yana diziyoruz;
var %= = $addtok(%=,$+($var(*,%1),½,$($var(*,%1),2)),32)
While sonunda; $sorttok identifier'ı ile değer'leri en yüksekten en alçağa doğru okutuyoruz.
Bunun içinde $sorttok identifier'ında "nr" parametresini kullanıyoruz.

Yani kısacası kod şöyle oluyor;

alias listele { var %1 = 1,%2 = $var(*,0) | while %1 <= %2 { if $regex($($var(*,%1),2),/[1-9]/g) && !$regex($($var(*,%1),2),/[a-z]/g) { if !$istok(%1 %2,$var(*,%1),32) { var %= = $addtok(%=,$+($var(*,%1),½,$($var(*,%1),2)),32) } } | inc %1 } | echo -a $replace($sorttok(%=,189,nr),$chr(189),$chr(32)) }

/listele yapman yeterli olacaktır.
Umarım anlamışsındır, açıklayıcı bir şekilde anlattım.

ilgin için teşekkürler
fakat;

veriables listemde sadece
%bir 1
%iki 2
%uc 3
bulunuyor.

dediğin aliası direk olarak kopyaladım.
komutu denediğimde karşıma çıkan şey bu

4 %= 4 %birr 1 %2 1 %2 1 %1 %1

 
Alıntı ile Cevapla

IRCForumlari.NET Reklamlar
sohbet odaları eglen sohbet reklamver