![]() |
Cevap: kontrol edip op ekletme hk. Alıntı:
Benim amacım kısa kod yazmayla ilgiliydi evet, ama buna kalkışma nedenim koddaki { yapılacaklar } kısmının 4-5 satırda da aynı olması ve çok fazla if koşulu kullanılmasıydı. Esasında bunların tek bir if koşulu içerisinde de kullanılabileceğini göstermek için düzenledim o kodu. on TEXT içerisinde regular expression kullanılabileceği gibi on NOTICE içerisinde de kullanılabilirdi ama bunu yaparsam o zaman || kullanmanın önemini vurgulayamazdım diye düşündüğüm için bu yola gitmedim. Diğer söylediklerinde haklısın. Ayrıca if/elseif kullanımı olan kodum tamamen @[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]'in mantığı anlamasına yönelikti, o kodda zaten kısa yazmaya ya da hızlı çalışmasına önelik bir kullanım yapmadım. @[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...], mantığı daha iyi anlayabilsin diye o şekilde yazdım. Bilgilendirmelerin için tekrar teşekkür ederim @[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]. Daha önce de açıklamalı yardım iletilerini okuma fırsatı buldum, gerçekten bu işte hem uzmanlaşmış hem de nasıl yardım edileceğinin etiği konusunda bilinçli bir codersın. |
Cevap: kontrol edip op ekletme hk. Tşk ederim. Scripting betiklerinde genel özellik, alternatif kısa,uzun yolların fazlalığı. Söylediğin gibi ilk öğrenim, anlama, kavrama etaplarında kodu çalıştırabilmek önemli. short code (kısalık) veya speed performance (hız performansı) artık iş hobiye dönüştüğünde devreye giriyor. Yinede ms'e merak salan arkadaşların bunları da bilmesinde öğrenmesinde fayda var. Belli kalıplara bağlı kalmamak keyifli. Ne kadar geliştirebilirsek yapılabilecek işler o kadar güzelleşiyor. Kolaylıklar dilerim. |
Cevap: kontrol edip op ekletme hk. =) Regex buyur; Kod: on *:notice:*:?:{ Bilgi amaçlı. Ayrıca kodda her koşulu düşünerek ayarladım. Access eklemede kanal ismi doğru girilmezse uyar. Kod: if !$regex($2,/^#.+/) { msg # Lütfen kanal belirtiniz. | return } Kod: if !$regex($3,/^([a-zA-ZĞğıİöÖüÜşŞçÇ_^\133\135}{][a-zA-ZĞğıİöÖüÜşŞçÇ0-9_|^}\{\133\135`-]{0,30})$/i) { msg # Lütfen nick belirtiniz. | return } Kod: if !$regex($4,\d) { msg # Lütfen Yetki seviyesini giriniz. | return } |
Cevap: kontrol edip op ekletme hk. Alıntı:
Yani amaç sidik yarıştırmak veya gövde gösterisi yapmak değildi, ben zaten 6 yıl mIRC Scripting'den uzak kaldım, web ile uğraştım. En ufak ayrıntıları bile yeni döndüğüm için kaçırmam doğaldır ki gerçekten amacım koduna saygısızlık etmek değildi. Kurduğun if koşullarının tümünde { msg ile bilgi gönder | grubu disable et } yer aldığından hepsini tek bir if koşulunda da toplayabilirizi göstermeye çalışmıştım, bunu farklı anladıysan kusura bakma. Böyle şeyler bana göre değil. Ayrıca o zaman @[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]'ın uyarılarını da göz önünde bulundurarak event içerisinde $regex'i kurabiliriz, yani daha kısa olarak || ayracını kullanmadığımız gibi if koşulu da kurmayabiliriz, özetle şöyle de olabilirdi: Kod: on $*:text:/^(!opekle)/iS:#:{ |
Cevap: kontrol edip op ekletme hk. Biz de zaten "sidik" yarıştırmıyoruz sadece "||" yı $regex'de kullandık =) |
Cevap: kontrol edip op ekletme hk. Alıntı:
|
Cevap: kontrol edip op ekletme hk. Etiketlemişsiniz bundan dolayı gördüm konuyu. Değerinizi bilin, venezuelladan yazıyorum .) Birazda can sıkıntısı. Regex'ın cılkını çıkartmışsınız. Normal /if operatorlerini kullanmaktan bu kadar uzaklaşmayın yahu. İlk olarak; Kod: !$regex($4,\d) a1a, b1, 1c, qwqwe23sasdd vb. olan textlere de işlem yapacaktır. - $4 !isnum kullanmanız en mantıklısı olacaktır. Karışıklığa gerek yok. TEXT eventinde regex kullanmışsınız. Buna da gerek yok. Ayrıca kanal girdisi için external sorgu yöntemi ile ayriyeten /if kullanmışsınız, hali hazır da event içerisinde kullanın, olsun bitsin. Örnek: Kod: on *:text:!opekle #?* &:#: /if %hmn { bla bla.. } yapmanız yeterli olur. Aynı script dosyası içinde iki aynı eventi kullanmassanız daha iyi olur. Kod: raw *:*: { Özellikle yardım edilirken kodlar en basit ve açık şekilde yazılırsa, arz eden kişiler tarafında öğrenme hevesi doğacaktır. Neyse sağlıcakla kalın. Dağılın şimdi .) Not: Feragat ischan yemez. |
Cevap: kontrol edip op ekletme hk. Nihayet Regexi Sadece Karmasık İşlemlerde, Regex Harici Yazimlarda Çok Uzun Kodlamalar Gerektiren Durumlarda, Normal Yazimin İçine Serpiştirerek Kullanılması Gerektiğini Söyleyen Birisi Çıktı :) Aynen Bahsettiğin Gibi @[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...] Bu Şekilde Olursa Anlaşılması Daha Kolay Oluyor. |
Cevap: kontrol edip op ekletme hk. Regex sonuçta mirc içinde bir öğe. Tamamen onu kullanarak kod yazılmasa da öğrenmekte fayda var. Bazı durumlarda yapılan işi bir hayli kısalttığı da aşikar. Adam akıllı anlatımlar örnekler olmadığı için araştırıp sınırları zorlamak insanlara zor geliyor. "IF THEN ELSE" de hiç anlamayana göre zor gelebilecek bir konu. Bu konuda kızdığım nokta insanların yerinde saymakta ısrar etmesi. File handling - comobject - binary - Bitsel tanımlar ve hatta /tokenize bile kaç kodda var ki. Onlar kötü onlar zor sakın onlarla uğraşmayın aman!!! gibi bir bilinç var maalesef. Korkacak bir şey yok. Araştırmaktan öğrenmekten korkmayın. Eğer korkmaya devam ederseniz, mIRC Scripting Sorunları kategorisi şuanda da olduğu gibi HAZIR İSTEK dışında bir potansiyelden başkasına sahip olamaz. |
Tüm Zamanlar GMT +3 Olarak Ayarlanmış. Şuanki Zaman: 09:04. |
Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2025, vBulletin Solutions, Inc.
Search Engine Friendly URLs by vBSEO
Copyright ©2004 - 2025 IRCForumlari.Net Sparhawk