IRCForumları - IRC ve mIRC Kullanıcılarının Buluşma Noktası
  sohbet

 Kayıt ol  Topluluk
Yeni Konu aç Cevapla
 
LinkBack Seçenekler Stil
Alt 21 Şubat 2009, 13:35   #1
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Filitreleme sorunu




Selam, alt alta verilerin sıralı olduğu bir metin belgesindeki çift olan verilerden birini silerek filitreleme işlemi için aşağıdaki gibi bir modül yazdım ama çok ağır çalışıyor. Daha faydalı önerilerinizi bekliyorum.

Örneğin aşağıdaki örnekte alt alta sıralı numaralar var. bu numaralardan 12'den iki adet var birini silmem gerekiyor.

12
45
78
12

Yaklaşık 15.000 satırlık metin belgeleri üzerinde işlem yapıyorum. bunları 1000'er satırlık metin belgelerine paylaştırdım ama yine 10 dakika sürüyor. Benim geliştirdiğim modül şu şekilde, ama çok yavaş:


Kod:   Kodu kopyalamak için üzerine çift tıklayın!
alias d.detect { var %i = 1, %file = $+(",$sfile(*.txt,Dosyayı seçin...,Başla),") var %o.file = $replace(%file,$remove($gettok(%file,-1,92),.txt"),$+($remove($gettok(%file,-1,92),.txt"),-ok)) while $read(%file,%i) { if ($cwnum(%o.file,$read(%file,%i)) == ok) write %o.file $read(%file,%i) inc %i } } alias cwnum { var %i = 1, %n = $gettok($1-,-1,32), %file = $remove($gettok($1-,1-,32),$gettok($1-,-1,32)) if (!$exists(%file)) write %file ::begin:: while $read(%file,%i) { if (%n == $read(%file,%i)) var %x = false inc %i } if (!%x) return ok }


 
Alıntı ile Cevapla

IRCForumlari.NET Reklamlar
sohbet odaları sohbet odaları Benimmekan Mobil Sohbet
Alt 21 Şubat 2009, 14:58   #2
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: Filitreleme sorunu




dosyalarında ne kadar satır var ne kadar dosyan var bilmiyorum ama ufak bir kod yazdım ve test ettim tek sorun anlayamadığım bir bug sanırım.. eğer ayıklanacak dosyanın başındaki değer 1 ise okumaya 2 den devam ediyor buda sanırım 6.21 bugu her neyse kod çalışıyor şöyle bir testte bulundum..

dosyanın içinde olan veriler;

x
1
2
3
4
5
6
7
8
9
10
11
12
45
78
x
y
99
12


silinenleri gösteriyor, extradan var olanlarıda kırmızı olarak belirtmiştim.
exist string : x deleted 16 line
exist string : 12 deleted 19 line

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
alias ayıkla { unset %x if (!$1) { echo 4 -a Komut Kullanımı: /ayıkla ayıklanacak-dosya.txt } if (!$hget(filter)) { hmake filter } var %x = 1,%a.file = $shortfn(%a.file) while (%x <= $lines($1)) { var %st = $read(%a.file,%x),%r = $rand(111111111,99999999) if ($hget(filter,%st)) { write $+(-l,$readn) %a.file | echo -s exist string : %st deleted $readn line } hadd filter %st %r inc %x 1 } hfree -w filter }

eğer sorun falan olursa buradan belirtirsin.


Konu XcLusive tarafından (21 Şubat 2009 Saat 15:04 ) değiştirilmiştir.
 
Alıntı ile Cevapla

Cevapla

Etiketler
filitreleme, mirc, mirc download, mirc indir, sorunu


Konuyu Toplam 1 Üye okuyor. (0 Kayıtlı üye ve 1 Misafir)
 

Yetkileriniz
Konu Acma Yetkiniz Yok
Cevap Yazma Yetkiniz Yok
Eklenti Yükleme Yetkiniz Yok
Mesajınızı Değiştirme Yetkiniz Yok

BB code is Açık
Smileler Açık
[IMG] Kodları Açık
HTML-Kodu Kapalı
Trackbacks are Kapalı
Pingbacks are Açık
Refbacks are Açık


Benzer Konular
Konu Konuyu Başlatan Forum Cevaplar Son Mesaj
Kadınlarda Uyku Sorunu - Kadınların Yüzde Yetmişi Uykusuzluk Sorunu Yaşıyor PySSyCaT Kadın Sağlığı 0 26 Ekim 2014 11:12