IRCForumlari.Net - IRC Sunucu sahipleri ve kullanıcıları buluşma noktası Sohbet club  
Go Back   IRCForumlari.Net - IRC Sunucu sahipleri ve kullanıcıları buluşma noktası > mIRC Scripting ve Sohbet Programları > mIRC Scripting Dersleri

Konu Bilgileri: Konuyu Regex, 09-03-2009 (16:18) tarihinde açmış. Bu konu 3 kişi tarafından yorumlanıp 660 kez izlenmiş.



Cevapla
 
LinkBack Seçenekler Stil
Alt 09-03-2009, 16:18   #1
Siteden Uzaklaştırılmış Üyeler
 
Regex - ait Kullanıcı Resmi (Avatar)
 
Üyelik tarihi: 15-09-06
Mesajlar: 1.784
IRC:
WEB:
İlgi Alanı:
Tecrübe Puanı: 0
IF Puanı : -500
IF Derecesi :
Regex buraların en sevilmeyenleri arasında...Regex buraların en sevilmeyenleri arasında...Regex buraların en sevilmeyenleri arasında...Regex buraların en sevilmeyenleri arasında...Regex buraların en sevilmeyenleri arasında...Regex buraların en sevilmeyenleri arasında...
Lightbulb Eventlardaki Prefixler Hakkında Bilgi

Ders: Eventlardaki Prefixler Hakkında Bilgi
Tarih: 8 Mart 2009 Pazar
Yazan: Regex

-

Evet arkadaşlar, bir aylık kısa bir aradan sonra derslerimize devam ediyoruz. Aslında, okuldu dersti çokça yoğunum bu sıralar. Ancak bu pazar akşamında, biraz boş zaman buldum ve sizlere bir şeyler kazandırabilmek için bu dersi yazma kararı verdim.

Derste anlatacağım-anlayacağınız konu, eventlardaki level (seviye)ler ve prefix (işaret)lerdir. Mesela bu konuya uzak kalan arkadaşlarımız, eventların başındaki prefixleri ve level tanımlarını (on @1000: veya on ^*: vb.) merak etmişlerdir. İşte bu merak, bu dersimizi okuduktan sonra ortadan kalkacak.

Öncelikle bu derste iki nokta üzerinde duracağım. Birisi "level" yani "seviye" olarak adlandırdığımız, sayılardan oluşan ve eventlarda "on"dan sonra gelen rakamsal değerlerdir.

Tamam da kardeşim nedir bu? diyorsan, aşağıya bak ve beni takip et.

Bu levellar, tanımlı oldukları kullanıcılar için işlem uygulatmayı sağlarlar. Hemen bir örnek vermek istiyorum. Misâl; bir düşman listesi oluşturduğumuzu farz edelim. Ne yapıyoruz? Genelde 666 seviyesinden, nickleri veya maskları listeye ekliyoruz ve şöyle bir kod kullanıyoruz:

Kod:
on 666:join:#:ban -k # $nick 2 Düşman listesindesin.

İşte buradaki 666, bizim düşman listesine eklediğimiz kullanıcıların tanımlı olduğu level oluyor. Bu bölüme 1 rakamını tanımlasaydık, tüm kullanıcılar için geçerli olacaktı. Yani;

Kod:
on 1:join:#:ban -k # $nick 2 Düşman listesindesin.

veya

Kod:
on *:join:#:ban -k # $nick 2 Düşman listesindesin.

Gibi bir kod kullansaydık, bulunduğumuz bir kanallara giren her kullanıcı, otomatik olarak atılacaktı.

Ek bilgi: Level kısmında 1 rakamının tanımlanması ya da bu bölümü geçersiz kılmak için * rakamının tanımlanması, işlem bakımından aynıdır.

Prefixlere geçmeden önce, yanlış kullanımlar ortaya çıkarmamanız için ek bir açıklama daha yapmak istiyorum. Diyelim yukarıdaki kodu kullandınız ve 667 levelına da bir kullanıcı tanımladınız; ancak bu kullanıcı da düşman olarak algılandı ve atıldı. Tabii atılır, son derece normâl. Çünkü seviye kısmına girdiğimiz rakamlar, kendisinden büyük tüm rakamları da karşılayacaktır. Sadece o seviyeyi
kapsatmanın yolu, + karakterinden geçiyor. Örneğin:

Kod:
on +666:join:#:ban -k # $nick 2 Düşman listesindesin.

Gibi kullanırsanız herhangi bir sorunla karşılaşmazsınız.

Şimdi gelelim, prefixlere... Yani sizin merak ettiğiniz ve dersimizin ana maddesi olan; eventlardaki "^", "@", "!", "$" gibi işaret (prefix)lere...

Bu prefixlere başlarken, yukarıdaki kodumuzla orantılı örnekler vermek istiyorum. Yani sonuçta siz, o kodun mantığını artık iyice kavradığınız için bu anlatacaklarımı da daha kolay kavrayacaksınızdır, aynı örnek üzerinden.

Bu prefixler nelerdir ve ne işlere yararlar?

Öncelikle prefixler, level (seviye)lardan önce kullanılırlar. Zaten vereceğim örneklerle iyice anlayacaksınız.

^: Normâl eventlardan önce devreye girer. Bu prefixi, genelde metinleri Türkçe'leştirmek için ya da farklı pencereye veri aktarmak için kullanıyoruz. Dikkat etmeniz gereken tek şey, veri aktarımını veya düzenlemesini yaptıktan sonra /haltdef kullanmaktır. Örneğin:

Kod:
on ^*:join:#:echo $color(info) # -t *** $iif($nick == $me,# kanalına girdiniz.,Giriş: $+($nick,.) $+($chr(40),$address,$chr(41))) | haltdef

Herhangi bir kanala giriş yaptığınızda, "<girdiğiniz-kanal> kanalına girdiniz." yanıtını aldığınızı göreceksiniz veya bir kullanıcı girdiğinde, yine Türkçe bir sonuç verecektir.

Not: Eğer /haltdef komutunu eklemeseydik; hem bizim verimizi, hem de mIRC'den gelen veriyi gösterecekti.

@: Bu prefix, oldukça güzeldir ve avantajlıdır. Kullanımı da son derece kolaydır. Eğer belirtilen kanalda, $me (yani biz) opsak işlem yapacaktır. Yani if ($me isop #) gibi gereksiz bir sorguya gereksinim duymamış oluyorsunuz. Örneğin:

Kod:
on @+666:join:#:ban -k # $nick 2 Düşman listesindesin.

Az önce verdiğimiz örnekte, op olmadığımız kanallara da düşman listemizdeki bir kullanıcı giriş yaptığında atmaya çalışacaktı. Fakat, artık bir sınırlama koyduk ve sadece op olduğumuz kanallarda işlem yapacaktır.

!: İşlemi gerçekleştiren kişi, biz değilsek işlem yapacaktır. Yine son derece hoş bir prefixtir. Mesela hep kullanırız ya if ($nick != $me) gibi şeyler? İşte artık o kullanımı bırakıp, bunu kullanabileceğiz. Üstte de anlattığım gibi gereksiz sorgulardansa, prefix kullanmak kodu hem hızlı yapar, hem de kısa tutar.

Hemen bu kullanıma da bir örnek verelim. Mesela kanala giren kullanıcı, biz değilsek gıcık bir karşılama yapsın. Nasıl mı? Aha, aşağıdaki gibi:

Kod:
on !*:join:#:.msg # $+($nick,$chr(44)) niye geldin kiii? Kalk, git yahu hödük!:S

*: Level (seviye) anlatımında da söylediğim gibi herkesi kapsatmak için kullanılır ve ek olarak yine her eventta olmazsa olmaz bir prefixtir. Zaten örneklerde de dikkatinizi çektiyse, hep on @*:, on !*: gibi kullanımlar yaptık. Yani bir seviye tanımlamadıysanız, kullanmak zorundasınız.

$: Geldik, benim en sevdiğim prefixe... Bu prefix, aslında benim öğrendikten sonra vazgeçilmezim olan mIRC'nin bir güzelliğidir. Sizin de sevmenizi istiyorum; iyidir, iyi...

Regular expression ($regex) kullanımını, event içerisinde kullanmamızı sağlayan bir prefixtir, $ prefixi. Tabii eğer siz, $regex hakkında bilgi sahibi değilseniz bu prefixi de sevmeyeceksinizdir ve burada verilen bilgiler bir işe yaramayacaktır. Bu nedenle, Alience hocamın yazmış olduğu "RegEx Yardım Dosyası"'nı mutlaka okuyun ve bu bilgilere de daha sonra göz atın.

Nerede kalmıştık? $ prefixi, dediğim gibi event içerisinde RegEx kullanmanızı sağlıyor. Örneğin:

Kod:
on *:text:*:*:if ($regex($1-,/IRCRehber/i)) echo -at * $qt($target) üzerinde, IRCRehber sözcüğü kullanıldı.

Şeklindeki bir kodu, aşağıdaki gibi yazabiliyoruz:

Kod:
on $*:text:/IRCRehber/i:*:echo -at * $qt($target) üzerinde, IRCRehber sözcüğü kullanıldı.

Yukarıda da anlattığım gibi aslında çok basit ve çok hoş bir prefixtir. Fakat siz, RegEx kullanmayı bilmiyorsanız doğal olarak bu kullanımı da kavrayamamışsınızdır.

Umarım bu dersten, birileri bir şeyler öğrenmiştir. Eğer bilginizi geliştirebildiysem, ne mutlu bana...

Not: Konu hakkındaki sorularınızı, başlık altından sorabilirsiniz.

Hepinize iyi çalışmalar dilerim.
Regex isimli Üye şimdilik offline konumundadır  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Alıntı ile Cevapla

IRCForumlari.NET
Webmaster.com.tr - Webmaster forumu
Alt 19-03-2009, 21:53   #2
 
Selim01 - ait Kullanıcı Resmi (Avatar)
 
Üyelik tarihi: 18-12-08
Mesajlar: 101
IRC:
WEB: www.IrcForumlari.net
İlgi Alanı:
Tecrübe Puanı: 0
IF Puanı : 20
IF Derecesi :
Selim01 daha yolun başında...
Standart Cevap: Eventlardaki Prefixler Hakkında Bilgi

öğrenicek çok şey var güzel olmuş eline sağlık
Selim01 isimli Üye şimdilik offline konumundadır  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Alıntı ile Cevapla

Alt 18-04-2009, 19:41   #3
 
sniper - ait Kullanıcı Resmi (Avatar)
 
Üyelik tarihi: 11-11-07
Mesajlar: 398
IRC:
WEB: www.IrcForumlari.net
İlgi Alanı:
Tecrübe Puanı: 18
IF Puanı : 385
IF Derecesi :
sniper ihtişamının farkına varmayan yok...sniper ihtişamının farkına varmayan yok...sniper ihtişamının farkına varmayan yok...sniper ihtişamının farkına varmayan yok...
Standart Cevap: Eventlardaki Prefixler Hakkında Bilgi

Güzel anlatmışsınız hocam elinize sağlık
sniper isimli Üye şimdilik offline konumundadır  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Alıntı ile Cevapla

Alt 04-06-2009, 11:26   #4
 
lordsulu - ait Kullanıcı Resmi (Avatar)
 
Üyelik tarihi: 03-12-08
Mesajlar: 110
IRC:
WEB: www.IrcForumlari.net
İlgi Alanı:
Tecrübe Puanı: 0
IF Puanı : 35
IF Derecesi :
lordsulu siftahı atmış!
Standart Cevap: Eventlardaki Prefixler Hakkında Bilgi

yav cok zor be ilk başlıyanlar için öğrenmek istiyorum geceden beri onlineyim kafam şişti pratik mi yapmak lazım yoksa böle dersleri bol bol takip mi emek lazım önerisi olan varmı yaff ???
lordsulu isimli Üye şimdilik offline konumundadır  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Alıntı ile Cevapla

Cevapla
Anahtar Kelimeler: , , ,


Bookmarks

Etiketler
bilgi, eventlardaki, hakkinda, prefixler


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

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 Açık
Pingbacks are Açık
Refbacks are Açık


Benzer Konular
Konu Konuyu Başlatan Forum Cevaplar Son Mesaj
#Group Hakkında Bilgi. daRkMoRGaN mIRC Scripting Dersleri 6 08-12-2008 02:48
sayaç hakkında bilgi ... iLgim Geri Dönüşüm Kutusu 4 22-11-2008 02:53
Mybb Hakkında Bilgi Collettivo MyBB 0 26-09-2008 05:27
mSN Hakkında 1-2 bilgi DoStNaMe MSN Mesenger 2 25-11-2005 16:55
if hakkında bilgi ? alfa mIRC Scripting Sorunları 4 08-03-2005 17:08

Copyright Link
Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2010, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO 3.5.1 PL1

IRCForumlari.net bir Chat markasıdır. IF 2003-2010 & All Right Reserved.
IRCForumlari.NET en iyi Google Chrome ile gezilebilir.
Forumda Tüm Zamanlar GMT +4 Olarak Ayarlanmış. Şuanki Zaman: 14:18.

Chat, webmaster, chat sohbet