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

IRCForumları - IRC ve mIRC Kullanıcılarının Buluşma Noktası (https://www.ircforumlari.net/)
-   mIRC Scripting Sorunları (https://www.ircforumlari.net/mirc-scripting-sorunlari/)
-   -   Dosyadan satır okuma sorun (https://www.ircforumlari.net/mirc-scripting-sorunlari/400972-dosyadan-satir-okuma-sorun.html)

antimatter 23 Temmuz 2011 17:16

Dosyadan satır okuma sorun
 
Merhabalar kullandığım kod şu şekilde;
[BOX="Kod"]
on *:input:#: {
if $1 == !aekle { write a.txt $2- | echo -a  $2-  dosyaya eklendi. }
if !aoku == $1 {
var %anti 1
while %anti <= $lines(a.txt) {
if $2 isin $read(a.txt,%anti) { echo -a $read(a.txt, w, $+(*,$2-,*)) }
inc %anti
}
}
}
[/BOX]

Burada yaşadığım sorun şu;
a.txt dosyasından içinde varolan, deneme kelimesi geçen bir veri okutmaya çalışıyorum. lakin;
"!aoku deneme
!aoku denem
!aoku dene
!aoku den
!aoku de
!aoku d"

sonuçları hep aynı çıktıyı veriyor. benim isteğim sadece deneme kelimesiyle başlaması yönünde.
ayrıca deneme kelimesi ile başlayan satırları bulmak için nasıl bir yol izlerim?

yardımcı olmaya çalışan arkadaşlara teşekkür ediyorum şimdiden.

Difuzyon 25 Temmuz 2011 14:20

Cevap: Dosyadan satır okuma sorun
 
Alıntı:

deneme kelimesi ile başlayan satırları bulmak için nasıl bir yol izlerim?
Yöntem 1)
Deneme kelimesiyle başlayan bir satırı okutmak için gerekli wildcard(iswm) sorgusu: deneme *
olması gerekirken kod içerisinde *deneme* pozisyonunda(isin) kullanılmış: deneme isin $read(a.txt,%anti)

$read mantığına dayalı while metoduyla listeleme
Kod:

on *:input:#: {
  if $1 == !aekle { write a.txt $2- | echo -a  $2-  dosyaya eklendi. }
  if $1 == !aoku {
    var %anti 1
    while %anti <= $lines(a.txt) {
      if ($2 * iswm $read(a.txt,%anti)) { echo -a $read(a.txt,%anti) }
      inc %anti
    }
  }
}

Yöntem 2)
Bir diğeri ise filtreleme (Filter) metodudur ki while'ye oranla daha seri,scripti yormayan,mIRC'in kendi içinde olan komutudur.

Filtreleme(filter) metoduyla listeleme
Kod:

on *:input:#: {
  if $1 == !aekle { write a.txt $2- | echo -a  $2-  dosyaya eklendi. }
  if $1 == !aoku { filtre $2- * }
}
alias filtre $iif($isid,echo -a $1,filter -fk a.txt filtre $1-)



Tüm Zamanlar GMT +3 Olarak Ayarlanmış. Şuanki Zaman: 15:34.

Powered by vBulletin® Version 3.8.8 Beta 3
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Search Engine Friendly URLs by vBSEO
Copyright ©2004 - 2024 IRCForumlari.Net