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

7Beğeni(ler)
  • 3 Post By Feragat
  • 4 Post By Difuzyon

Yeni Konu aç Cevapla
 
LinkBack Seçenekler Stil
Alt 04 Ekim 2013, 12:35   #1
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
İki kod birleştirme




Selam Arkadaşlar,
elimdeki mircdeki 2 kod çakışıyor kodlardan biri nick renkli yazma kodu diğeri ise noktalama işaretleri. forumdaki benzer konuları incelememe rağmen kendim yapmayı başaradım yardımcı olabilirseniz sevinirim.
noktalama işaretleri kodu;

on *:input:*:{
if (!$regex($left($1,1),/^!|[./]|/|/i/)) {
say $wn($1-) | halt
}
}
alias wn return $replace($+($regsubex($regsubex($1-,/([.,;,!,+,*,?,{,},=,-,:,',^,%,&,/,_,~,`,"])/g,$+(,$yr,\t,,$chr(15))),/([A-Z])/g,\t),),$chan,$+(<,,$yr,,$chan,,,>))
alias yr return 12

nick renkli yazma kodu;

if (/* iswm $1) { return }
var %a 0, %b, %c
while (%a < $numtok($1-,32)) {
inc %a
%c = $gettok($1-,%a,32)
if ($remove(%c,!,?,:,;,.,$chr(44),?) ison #) { %b = $iif(%b,%b) $+(4,%c,) }
else { %b = %b %c }
}
if (!%b) { %b = $1- }
say %b
halt
}
}


Bu iki kodu birleştirip tek kod haline getirebilmeniz mümkünmü acaba, şimdiden teşekkür ederim.

 
Alıntı ile Cevapla

IRCForumlari.NET Reklamlar
sohbet odaları sohbet odaları Benimmekan Mobil Sohbet
Alt 04 Ekim 2013, 16:39   #2
Çevrimiçi
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: İki kod birleştirme




OricinaL Nickli Üyeden Alıntı
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.
Selam Arkadaşlar,
elimdeki mircdeki 2 kod çakışıyor kodlardan biri nick renkli yazma kodu diğeri ise noktalama işaretleri. forumdaki benzer konuları incelememe rağmen kendim yapmayı başaradım yardımcı olabilirseniz sevinirim.
noktalama işaretleri kodu;

on *:input:*:{
if (!$regex($left($1,1),/^!|[./]|/|/i/)) {
say $wn($1-) | halt
}
}
alias wn return $replace($+($regsubex($regsubex($1-,/([.,;,!,+,*,?,{,},=,-,:,',^,%,&,/,_,~,`,"])/g,$+(,$yr,\t,,$chr(15))),/([A-Z])/g,\t),),$chan,$+(<,,$yr,,$chan,,,>))
alias yr return 12

nick renkli yazma kodu;

if (/* iswm $1) { return }
var %a 0, %b, %c
while (%a < $numtok($1-,32)) {
inc %a
%c = $gettok($1-,%a,32)
if ($remove(%c,!,?,:,;,.,$chr(44),?) ison #) { %b = $iif(%b,%b) $+(4,%c,) }
else { %b = %b %c }
}
if (!%b) { %b = $1- }
say %b
halt
}
}


Bu iki kodu birleştirip tek kod haline getirebilmeniz mümkünmü acaba, şimdiden teşekkür ederim.

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
on *:input:*:{ if (!$regex($left($1,1),/^!|[./]|/|/i/)) { var %a 0, %b, %c while (%a < $numtok($1-,32)) { inc %a %c = $gettok($1-,%a,32) if ($remove(%c,!,?,:,;,.,$chr(44),?) ison #) { %b = $iif(%b,%b) $+(4,%c,) } else { %b = %b %c } } if (!%b) { %b = $1- } say $wn(%b) halt } } alias wn return $replace($+($regsubex($regsubex($1-,/([[:punct:]])/g,$+(,$yr,\t,,$chr(15))),/([A-Z])/g,\t),),$chan,$+(<,,$yr,,$chan,,,>)) alias yr return 12


__________________
The Ghost of Christmas Past...

i'm here sometimes
 
Alıntı ile Cevapla

Alt 05 Ekim 2013, 22:51   #3
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: İki kod birleştirme




Merhaba Feragat,

Doğruya biraz daha yaklaşmak adına bilgi paylaşım yapmak istedim...

Kodda ki regex kısmı sırıtıyor (Kulakların çınlasın biraz @[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...] ) , böyle bir tanımlama olmaz. Ki seninde bunu copy/paste geçmeden önce farketmen daha doğru olur. Mutlaka regex'mi kullanmalıyız? Hayır, bir $istok sorgusu (/,.,!) bunları aşmaya yeter.

Kodlamada bir while döngüsü var ve bence bunu egale etmek adına regsubex kullanmak doğru ve önerim \S+ (kelime haznesi) kullanmak, burdan çıkacak sonuçları "nick'mi değil mi?" kendi içinde $iif operatörünü kullanarak (if-else) nickse renklendir, değilse normal aktar ve peşinden 2.regsubex ile noktalama işaretlerinin sonuçlarını yansıtabilirsin.

Ekstra olarak INPUT event'ında kanal/özel (*) ayrışmasını sağlamamız daha doğru olur kanısındayım.

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
on *:input:*:{ if !$istok(/ ! .,$left($1,1),32) { if $window($active).type == channel { msg $active $regsubex($regsubex($1-,/(\S+)/g,$iif(\1 ison #,$+(04,\1,,),\1)),/([[:punct:]])/g,$+(12,\1,,)) } elseif $window($active).type == query { msg $active $regsubex($regsubex($1-,/(\S+)/g,$iif(\1 == $active,$+(04,\1,,),\1)),/([[:punct:]])/g,$+(12,\1,,)) } halt } }


 
Alıntı ile Cevapla

Cevapla

Etiketler
birleştirme, kod, İki


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


Benzer Konular
Konu Konuyu Başlatan Forum Cevaplar Son Mesaj
İki Ayrı Disk Parçasını Birleştirme SeckiN Bilgisayar Donanımı 0 18 Temmuz 2013 13:40
İki Kıtayı Birleştirme Hayali Kalemzede Tarih 0 20 Ağustos 2011 14:42
ASP-IRC üyeleri birleştirme MaDYaKuZa ASP/ASP.NET 3 24 Kasım 2008 22:54
Db birleştirme 1Casper PHP 0 10 Mart 2007 00:25