Written by ; LeadeR & DefauLt
***** If-then-else İFADELERİ *****
** Temel Bilgiler:
* If ifadesi *
If, Türkçe 'deki anlamı gibi, EĞER ifadesini belirtir. If, mIRC Scriptingteki belkide
en çok kullandığımız ifadedir. Çünkü hemen tüm komutların uygulanmasından önce belirtilen
olasılıkların olmasını bekleriz.
* Else ifadesi *
Else, if 'te belirtilen olasılığın tutmadığı zaman ne yapılacağını belirtir.
* Elseif ifadesi *
Elseif, if 'te belirtilen olasılık tutmadığında ve elseif 'ten sonra belirteceğimiz
komutların tuttuğunda demektir. (elseif = o değilse ve şu tutarsa...)
-----
If ve elseif ifadesinden sonra beklenen olasılıklar () parantez içine alınır.
Ayrıca bir kaç olasılık birden belirteceksek, && işletmeni ile birbirine bağlarız.
Ardından uygulanacak komut ise {} köşeli parantez içinde yazılır.
if (k1 işletmen k2) { uygulanacak komut(lar) }
elseif (k1 işletmen k2) { uygulanacak komut(lar) }
else { yapılacak komutlar }
* İŞLETMENLER *
== Eşitlik belirtir.
=== Eşitlik belirtir.
!= Eşitsizlik belirtir. (Eş¤¤ değilse)
< k1 'in, k2 'den küçük olması
> k1 'in, k2 'den büyük olması
>= k1 'in, k2 'ye eş¤¤ veya ondan büyük olması
<= k1 'in, k2 'ye eş¤¤ veya ondan küçük olması
// k2, k1 'in bir katı olması
\ k2, k1 'in bir katı olmaması
& Benzerlik ifadesi
isin k1, k2 'nin içinde bulunması
isincs k1, k2 'nin içinde bulunması
iswm wildcard k1, k2 'nin içinde bulunması
isnum k1, k2 'deki numaralardan biriyse (k2 seçime bağlı)
isletter k1, k2 'deki harflerden biriyse (çoklu setlerde kullanılabilir)
isalnum Textin sadece harf ve rakamlardan oluşması (k2 seçime bağlı)
isalpha Textin sadece harflerden oluşması
islower Textin sadece küçük harflerden oluşması
isupper Textin sadece büyük harflerden oluşması
ison k1 nickinin k2 kanalında olması (sadece kanallarda kullanılabilir)
isop k1 nickinin, k2 kanalında op olması
ishop k1 nickinin, k2 kanalında halfop olması
isvoice k1 nickinin, k2 kanalında voice olması
isreg k1 nickinin, k2 kanalında normal bir nick olması
ischan k1 nickinin sizin bulunduğunuz bir kanalda olması
isban k1 'in ban listesinde bulunması
isaop k1 in, k2 kanalı için sizin aop listenizde bulunması (k2 seçime bağlı)
isavoice k1 in, k2 kanalı için sizin voice listenizde bulunması (k2 seçime bağlı)
isignore k1 'in k2 şeklinde sizin ignore listenizde bulunması (k2 seçime bağlı)
isprotect k1 'in, k2 kanalı için sizin koruma listenizde bulunması (k2 seçime bağlı)
isnotify k1 'in sizin notify listenizde bulunması
İşletmenlerin başına getireceğiniz ! işareti ile tersi durumu belirtebilirsiniz.
Örn
isin içinde bulunması demekse, !isin içinde bulunmaması demektir.
* $ifmatch ifadesi *
if (yazi isin baskabiryazi) { ... }
Eğer yazi baskabiryazi içinde bulunursa $ifmatch "yazi" olarak geri döner (Bulunan değer).
İFADELERİN KOMBİNASYONLARI
Alttaki kodu aliasa ekleyerek /rakamtesti <rakam> yazıp deneyin. Çok daha iyi anlayacaksınız.
Bu alias sizin /rakamtesti yazdıktan sonra yazacağınız rakamın 5 'ten büyük veya
küçük olduğunu kontrol eder.
rakamtesti {
if (($1 > 0) && ($1 < 10)) {
if ($1 < 5) echo Yazdığınız rakam 5 'ten küçük
else echo Yazdığınız rakam 5 'ten büyük
}
else echo Yazdığınız rakam sınırların dışında
}
* Dikkat: if () içindeki ($1 > 0) ile ($1 < 10) olasılığını && işaretmeni ile bağladık.
Bunun sonucunda && işaretmeninin nasıl kullanılmış olduğunu da öğrenmiş olduk.
* ! Prefixi *
Genellikle tanımlayıcılardan önce kullandığımız ! prefixi, tanımlayıcıya verilmiş
bir değerin bulunup bulunmadığı olasılığını belirtir.
Örn
if (%a == $null) echo a bir değere sahip değil
if (!%a) echo x a bir değere sahip değil