IRCALEM.Com Genel Forum, IRC Forumu IF - mIRC Scripting mIRC Scripting Hazır Kodlar mIRC Parça Kodlar Text to Regex Alias (Kelimeyi Regexe Çevirmek)
Text to Regex Alias (Kelimeyi Regexe Çevirmek)
Aytac
Text to Regex Alias (Kelimeyi Regexe Çevirmek)
0
307
  • 0 Oy - 0 Ortalama
  • 1
  • 2
  • 3
  • 4
  • 5

[-]
Etiketler
to text kelimeyi regexe regex alias çevirmek

Bu konuyu görüntüleyen kullanıcı(lar):1 Ziyaretçi
Şuan Offine!
Şuan Offine!
Aytac Administrator
********
Proje Sorumlusu

  • Üyelik tarihi    04.02.2020
  • Konum  78 Karabük
  • Konular336
  • Mesajlar343
  • Beğenileri:16 in 12 posts
  • Beğendiği:7
  • Rep puanı 5

  • Para: 40.2₺

FnX botunun auto spam kodundan bir parçayı sizlerle paylaşma kararı aldım. daha da gelişmiş halini de ilerleyen zamanlarda paylaşmayı düşünüyorum. regexe çevirmek istediğiniz kelimenin boyutu 338 byte/karakterden büyük ise regex çevirme işlemini yapmıyor. bunun sebebi bu kodu kulanmış olduğum sunucuda bu boyutu aşan verilerin (açıklama dahil) spamfilter olarak eklenememesiydi.  kullanımıyla ilgili örnekleri aşağıda vereceğim.

öncelikle kodumuz:
Kod :
;yardımcılar
alias _reg { return $replace($1-,a,[àáâãäåæÆÀÁÂÃÄÅÆaª@4],e,[æèéêëe£â‚¬ÈÉÊ3],i,ı,ı,İ,İ,[ÌÍÎÏìíîïİıi\!1j],b,ß,ß,[bß],k,[kq],o,ö,ö,Ö,Ö,0,0,[òóôõoöÖøÒØÔº0],u,ü,ü,Ü,Ü,[ùúûÙÚÛuÜüÙµ],[:p[ùúûÙÚÛuÜüÙµ]nct:],[:punct:],ğ,Ğ,Ğ,g,g,q,q,[ğĞgq],c,ç,ç,Ç,Ç,[¢cçÇ],[k[ğĞgq]],([kq]|(\|\{)),[:pun[¢cçÇ]t:],[:punct:],[:[¢cçÇ]ntrl:],[:cntrl:],r,[r\],[:cnt[r\]l:],[:cntrl:],ş,s,s,Ş,Ş,$,$,[Å¡Å*sŞş§\$5],\[Å¡Å*sŞş§\$5],\s,v,w,w,[wv]) }
alias c {
  if $regex($prop,/^b$/) { return $+($chr(3),$regsubex($1,/(x)/g,$chr(44)),$chr(2),$chr(2),$chr(2),$2-,$chr(3),$chr(2)) }
  if $regex($prop,/^u$/) { return $+($chr(3),$regsubex($1,/(x)/g,$chr(44)),$chr(31),$chr(2),$chr(2),$2-,$chr(3),$chr(31)) }
  if $regex($prop,/^(bu)|(ub)$/) { return $+($chr(3),$regsubex($1,/(x)/g,$chr(44)),$chr(31),$chr(2),$chr(2),$chr(2),$2-,$chr(3),$chr(31),$chr(2)) }
  else { return $+($chr(3),$regsubex($1,/(x)/g,$chr(44)),$chr(2),$chr(2),$2-,$chr(3))) }
}
;olay
alias çevir3 {
  var %breglen (?i) $+ $regsubex($_reg($regsubex($regsubex($regsubex($strip($1),/(.)/g,\1+([[:punct:][:cntrl:] ]|\d)*),/\Q([[:punct:][:cntrl:] ]|\d)*\E$/g,),/\+$/g,)),/(\[bß\]|n|m|z|h|f|x|d|p|y|t|l|\[wv\]|\Q([kq]|(\|\{))\E|\[wv\]|\[¢cçÇ\]|\Q[Å¡Å*sŞş§\$5]\E|\[ğĞgq\]|\Q[r\]\E)\+\Q([[:punct:][:cntrl:] ]|\d)*\E/gi,\1+([[:punct:][:cntrl:] ]|\d|h)*)
  if $len(%breglen) > 338 {
    echo -a $c(4,<Hata Mesajı>) Çevirdiğiniz regex spamfilter için $c(4,$calc($+($len(%breglen),-,338))) BYTE kadar büyük. Lütfen kelimenizi $c(4,sondan birer harf silerek).b çevirme işlemini yineleyin.
    echo -a -
    return
  }
  echo -a $c(2,Kelime:) $1
  echo -a $c(2,Regex:) %breglen
  echo -a $c(2,Boyut:) $len(%breglen) BYTE
  echo -a -
}
yaptığımız testler:

uygulama: /çevir3 Xenophanes
cevap:
<Hata Mesajı> Çevirdiğiniz regex spamfilter için 8 BYTE kadar büyük. Lütfen kelimenizi sondan birer harf silerek çevirme işlemini yineleyin.
-
uygulama: /çevir3 Xenop
cevap:
Kelime: Xenop
Regex: (?i)X+([[:punct:][:cntrl:] ]|\d|h)*[æèéêëe£â‚¬ÈÉÊ3]+([[:punct:][:cntrl:] ]|\d)*n+([[:punct:][:cntrl:] ]|\d|h)*[òóôõoöÖøÒØÔº0]+([[:punct:][:cntrl:] ]|\d)*p
Boyut: 152 BYTE
-
uygulama: /çevir3 trsohbet
cevap:
Kelime: trsohbet
Regex: (?i)t+([[:punct:][:cntrl:] ]|\d|h)*[r\]+([[:punct:][:cntrl:] ]|\d|h)*[Å¡Å*sŞş§\$5]+([[:punct:][:cntrl:] ]|\d|h)*[òóôõoöÖøÒØÔº0]+([[:punct:][:cntrl:] ]|\d)*h+([[:punct:][:cntrl:] ]|\d|h)*[bß]+([[:punct:][:cntrl:] ]|\d|h)*[æèéêëe£â‚¬ÈÉÊ3]+([[:punct:][:cntrl:] ]|\d)*t
Boyut: 262 BYTE
-

bu arada şu c aliası kodlarda renk,bold,altı çizili gibi olayları kodlamalarda kullanabilmek için azıcık ta can sıkıntısından yapmış olduğum bir şey. onun da olayı:
kırmızı font, beyaz yazı ile Xenophanes yazmak için: $c(0x4,Xenophanes)
kırmızı font, beyaz yazı, kalın harfler ile Xenophanes yazmak için: $c(0x4,Xenophanes).b
kırmızı font, beyaz yazı, altı çizili harfler ile Xenophanes yazmak için: $c(0x4,Xenophanes).u
kırmızı font, beyaz yazı, altı çizili, kalın harfler ile Xenophanes yazmak için: $c(0x4,Xenophanes).ub veya $c(0x4,Xenophanes).bu
kırmızı yazı ile Xenophanes yazmak için: $c(4,Xenophanes)
-
“İnsanların en hayırlısı, insanlara faydalı olandır”. H.Ş.



Benzer Konular...
Konu: Yazar Cevaplar: Gösterim: Son Mesaj
  !regex [kelime] Aytac 0 189 20.03.2020, 00:00
Son Mesaj: Aytac
  Remote Dosyaları İçinde Text Arama Aytac 0 235 19.03.2020, 23:17
Son Mesaj: Aytac
  Text -> Ascii Dönüşümü Aytac 0 181 19.03.2020, 23:14
Son Mesaj: Aytac

Foruma Git: