String İfadeler
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
String İfadeler
Merhabalar,
Arkadaşlar, her ne kadar bu ifadeleri kullanıyor isem de tam olarak anlamış değilim. Keza kullandığım fonksiyonlar zaten kitaplarda var ve delphi ile gelen hazır fonksiyonlar.Bana bu ifadelerle ilgili yardım ederseniz sevinirim.
örneğin;
memo da bir satırı(diyelim 1.satırı), nasıl ifade edebilirim?
memo içerisinde 2. satır 5. kelime?
Pos, copy, length, delete, insert fonksiyonlarını kitaplardam kavramak
biraz daha zor. Çünkü baktığım bir çok kitap string işleme konusunda
yeterli bilgi vermiyor.
Arkadaşlar, her ne kadar bu ifadeleri kullanıyor isem de tam olarak anlamış değilim. Keza kullandığım fonksiyonlar zaten kitaplarda var ve delphi ile gelen hazır fonksiyonlar.Bana bu ifadelerle ilgili yardım ederseniz sevinirim.
örneğin;
memo da bir satırı(diyelim 1.satırı), nasıl ifade edebilirim?
memo içerisinde 2. satır 5. kelime?
Pos, copy, length, delete, insert fonksiyonlarını kitaplardam kavramak
biraz daha zor. Çünkü baktığım bir çok kitap string işleme konusunda
yeterli bilgi vermiyor.
Bilgi çoğaldıkça krallar ölür
Eğer bir memonun (veya türetildiği obje benzeri başka bir bileşenin) satır ve sütun bilgisini göstermek istiyorsan şöyle bir kod var.
Tanımını değişken olarak yap.
Kod: Tümünü seç
var SelPos: DWORD;
Kod: Tümünü seç
procedure TForm1.ShowEditPos(Sender: TObject; var Done: Boolean);
var
OldPos: DWORD;
charidx, x, y: WORD;
begin
OldPos := SelPos;
SelPos := Memo1.Perform(EM_GETSEL, 0, 0);
if OldPos <> SelPos then begin
if LOWORD(SelPos) <> LOWORD(OldPos)
then charidx := LOWORD(SelPos)
else charidx := HIWORD(SelPos);
y := Memo1.Perform(EM_LINEFROMCHAR, charidx, 0);
x := charidx - Memo1.Perform(EM_LINEINDEX, y, 0);
Edit1.Text := Format('%d:%d', [y+1, x+1]);
end;
end;
Merhaba
Bir memonun sadece istenen satırını almak için bu kodu kullanabilirsin. buradaki satirno tam sayı tipinde.
bir kelimeyi almak içinde benim bildiğim tek yol memodaki boşlukları saydırarak istediğin sıradaki kelimenin başından sonraki boşluğa kadar kopyalaman gerekir.
Komutlar hakkında kısaca bilgi verebilirim.
Pos :
Komut bir string içinde başka bir stringi arıyor ve kaçıncı karakterde olduğunu geri dönderiyor. Eğer bulunamazsa 0 (sıfır) değeri dönüyor. Yani "Bugün hava çok güzel" cümlesini cumle adında bir değişkene aktarıtsak içindeki "güzel" kelimesini aramak için
Bu kod çalıştığında Sonuc değişkenine 16 değeri atanır.
Copy :
Belirtilen bir string içinde başka bir stringi copyalar. Kullanımı
Sonuc:=Copy(String İfade,Kopyalamaya başlama yeri,Kopyalanacak Karakter Sayısı);
Yukarıdaki değişkeni örnekte kullanırsak
komutunu verdiğimizde 16. karakterden itibaren 5 karakter koryalanarak sonuc değişkenine atanır. Sonuc='güzel' olması gerekir.
Length :
Length komutu string teki karakter sayısını verir. kullanımı
Sonuc:=Length(String ifade);
yukarıdaki değişkeni kullanırsak
ifadesinin sonucunda sonuc=20 olmalı
Insert :
Bu komut ise stringin istenen yerine başka bir string ifade ekler. kullanımı:
Insert(Eklenecek ifade,hangi ifadeye eklenecek,hangi karakterden sonra eklenecek);
Delete :
Bu komut belirtilen bir string ifadenin istenen yerinden intenen sayıda karakter silmeye yarar. Kullanımı :
Delete(String ifade, Başlama yeri, silinecek karakter sayısı);
Bu fonksiyonları direk nesnelere uygularsan bazen problem çıkartabilir. önce nesnedeki ifadeyi bir değişkene aktarırsan daha iyi olur.
Daha fazla bilgi için Borland Delphi5 Görsel Programlama ile Tasarım Memik YANIK Meta Yayınları nı önerebilirim. bu konuları iyi incelemiş.
iyi çalışmalar.
Bir memonun sadece istenen satırını almak için bu kodu kullanabilirsin. buradaki satirno tam sayı tipinde.
Kod: Tümünü seç
Edit1.Text:=Memo1.Lines[SatirNo-1];
Komutlar hakkında kısaca bilgi verebilirim.
Pos :
Komut bir string içinde başka bir stringi arıyor ve kaçıncı karakterde olduğunu geri dönderiyor. Eğer bulunamazsa 0 (sıfır) değeri dönüyor. Yani "Bugün hava çok güzel" cümlesini cumle adında bir değişkene aktarıtsak içindeki "güzel" kelimesini aramak için
Kod: Tümünü seç
Sonuc:=Pos(a,'güzel');
Copy :
Belirtilen bir string içinde başka bir stringi copyalar. Kullanımı
Sonuc:=Copy(String İfade,Kopyalamaya başlama yeri,Kopyalanacak Karakter Sayısı);
Yukarıdaki değişkeni örnekte kullanırsak
Kod: Tümünü seç
Sonuc:=Copy(a,16,5);
Length :
Length komutu string teki karakter sayısını verir. kullanımı
Sonuc:=Length(String ifade);
yukarıdaki değişkeni kullanırsak
Kod: Tümünü seç
Sonuc:=Length(a);
Insert :
Bu komut ise stringin istenen yerine başka bir string ifade ekler. kullanımı:
Insert(Eklenecek ifade,hangi ifadeye eklenecek,hangi karakterden sonra eklenecek);
Delete :
Bu komut belirtilen bir string ifadenin istenen yerinden intenen sayıda karakter silmeye yarar. Kullanımı :
Delete(String ifade, Başlama yeri, silinecek karakter sayısı);
Bu fonksiyonları direk nesnelere uygularsan bazen problem çıkartabilir. önce nesnedeki ifadeyi bir değişkene aktarırsan daha iyi olur.
Daha fazla bilgi için Borland Delphi5 Görsel Programlama ile Tasarım Memik YANIK Meta Yayınları nı önerebilirim. bu konuları iyi incelemiş.
iyi çalışmalar.
Sevgili Unyeli,
Ben fikrinize saygı duymakla beraber katılmadığımı da ifade etmek isterim. Çünkü 400 sayfası sadece delphi şöyledir böyledir. menüye şöyle girersin diyen bir kitap olduğundan boşuna para vermeyin derim. (Ki bilgisayar kitaplarının kaç para olduğunu biliyoruz)
Bu tür ifadelerde alternatif sunulması gerekir. Bence yeni başlayan arkadaşlar için İhsan Karagülle-Zeydin Pala nın Delphi kitabı iyi bir referans olur. Gerçi son kitaplarında ayrılmışlar herhalde ama... İkisi de üniversite de hocalık yapan kişi pedagojik ve metodsal bir anlatımı var. Sorarsan sen hangi kitabı okuyorsun diye Ben de Internet kitabını derim
))
Ben fikrinize saygı duymakla beraber katılmadığımı da ifade etmek isterim. Çünkü 400 sayfası sadece delphi şöyledir böyledir. menüye şöyle girersin diyen bir kitap olduğundan boşuna para vermeyin derim. (Ki bilgisayar kitaplarının kaç para olduğunu biliyoruz)
Bu tür ifadelerde alternatif sunulması gerekir. Bence yeni başlayan arkadaşlar için İhsan Karagülle-Zeydin Pala nın Delphi kitabı iyi bir referans olur. Gerçi son kitaplarında ayrılmışlar herhalde ama... İkisi de üniversite de hocalık yapan kişi pedagojik ve metodsal bir anlatımı var. Sorarsan sen hangi kitabı okuyorsun diye Ben de Internet kitabını derim

-
- Üye
- Mesajlar: 37
- Kayıt: 18 Haz 2003 11:48
merhaba
Bence delphi ye baslangictaki en iyi kitap Ruhver Barengi delphi ye bakis isimli bir kitap.Kitabin delphi 5 icin olani vardi ama oda piyasada yok cok guzel bir kitap admin mustafa hocamda yaklsik bir yil once ben delphi ye baslamadan once onerdigi kitapti.
Siddetle tavsiye ederim
memik Yanik hikayee
Siddetle tavsiye ederim
memik Yanik hikayee