|
|
| | #10 | ||||
| Çevrimdışı ![]() IF Ticaret Sayısı: (0) | Cevap: shunlist hk.
Merhabalar. Yaptığın kodu, Fırsat bulup ancak inceleyebildim. Yapmak istediğin işi anlıyorum ama istediğin gibi çalışması için mantığı değiştirmen gerek. Şöyle anlatayım. Neyi, neyin içinde aradığına dikkat etmen gerek. Örneğin; Elindeki veri Nick ve sen bu nicki dosya içinde eklediğin filtreler içinde arayacaksan eğer üstteki yaptığın hatalı çalışır. Mantık hatası şudur; $read mantığında Bütünü, parçanın içinde arayamazsın. Parçayı bütünde araman gerekiyor. Mesela kanala giren nick Feragat diyelim, shunn.txt içinde eklediğin verilerin wildcard kullanılarak eklendiğini düşünelim. Kanala Giren Nick = Feragat Wildcard Ekli Parça = Fera* Sen burada Feragat nickini Fera* kalıbı içinde ararsan sonuç alamazsın. Tam tersi Fera* yı Feragat'in içerisinde ararsan sonuç bulabilirsin. Bunu başarabilmen için döngü kullanmalısın ki bu sağlıklı sonuç verebilse de yüzlerce kalıp ekli olduğunu düşünürsek çok yavaş sonuç verir. Döngü .txt içindeki her veriyi kanala giren nick ile kıyaslayacak ve eşleşme olursa sonuç dönecek. 1000 satır veri olduğunu var sayarsan bir hayli yavaş olur. Bunu tek bir tanım içinde yapabilmek için hash table tanımlarını kullanabilirsin. Hash table Bütünü, parçanın içinde arayabiliyor. Hash table için örnek. Kod: Kodu kopyalamak için üzerine çift tıklayın!
Feragat bütününü Fer* parçasının içinde buldu. Bunun dışında Access Levels konusundaki User List kullanmanı öneririm. Event prefixi olarak join eventına ekleyip wildcard ile kanala giren nickleri döngüsüz tespit edip işlem yaptırabilirisin. ( Sebep de ekleyebilirsin. ) Access Levels için incelemeni önereceğim konu: [Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...] Belki fikir verebilir. Ayrıca .txt dosyalarına yazma/okuma/silme yaptırmana da gerek kalmaz.
__________________ The Ghost of Christmas Past... mircscripting.net Konu Feragat tarafından (14 Eylül 2019 Saat 22:00 ) değiştirilmiştir. Sebep: Küçük bir düzenleme. | ||||
| | |
| Etiketler |
| regex, willcard |
| Konuyu Toplam 1 Üye okuyor. (0 Kayıtlı üye ve 1 Misafir) | |
| |