Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
String Fonksiyonları [Çözüldü]
#1
Merhabalar, string olarak tuttuğum bir alanda gelen kaydın son 4 hanesini nasıl alabilirim?

s: = 'Istanbul';
s:= RightStr(s,4);

Sehir.Text := s;

Şeklinde kullandığım zaman S bilgisini boş döndürüyor. Copy ile ilk karakterini alabiliyorum ama son karakterini alabilir miyim bulamadım başka hangi yöntemler var acaba yardımcı olabilir misiniz?

Copy(s, S.Length-4, s.Length) fesih beyin ikinci yöntemi çok yardımcı oldu ^^
Don't fear the try!
Cevapla
#2
Uses kısmına Strutils ekeyerek ardından AnsiRightStr(s,4) denermisin.
Cevapla
#3
test edilmiştir.
gelen alan sonunda boşluk olabilir.

edit2.text := AnsiRightStr(trim(edit1.Text), 4)

şeklinde  kullanablirsiniz 

var
 Form1: TForm1;

implementation

{$R *.dfm}
uses strutils  ;
procedure TForm1.FormCreate(Sender: TObject);
begin
[ars=delphi]edit2.text := AnsiRightStr(edit1.Text, 4)
end;

end.
"…De ki: "Hiç bilenlerle bilmeyenler bir olur mu? Şüphesiz, temiz akıl sahipleri öğüt alıp-düşünürler" (Zümer Suresi, 9)
Cevapla
#4
Merhaba,
RightStr fonksiyonu ile de yapabilmeniz gerekiyordu. Kullandığınız yöntem doğrudur.
Farklı iki yöntem daha sunayım fakat her iki yöntem de iki medodun çalıştığını unutmayın. 
RightStr yönteminde tek metod çalışıyorken, Copy ve SubString yönteminde iki ayrı metod kullanılıyor.
I.Yöntem:
s.Substring(s.Length - 4)
II.Yöntem:
Copy(s, s.Length - 3, s.Length)
While true do; Hayat döngüsü, kısır değildir! Yapılan bir yanlış, o döngünün dışına çıkmanızı sağlayacaktır.
WWW
Cevapla
#5
(04-03-2019, Saat: 10:55)CesuR Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Üye Olmanız Gerekiyor. Üye Olabilmek İçin Lütfen Buraya Tıklayınız.Uses kısmına Strutils ekeyerek ardından AnsiRightStr(s,4) denermisin.

Merhaba, Uses kısma Strutils belirttim, ve AnsiRightStr ile de denedim, ama boş döndürdü yine de :/
Don't fear the try!
Cevapla
#6
Buton tıkladığınız Procedure içini tamamen buraya yazar mısınız?

variable tanımını nerede yaptınız, takip eden satırda yine s'yi başka bir şeye eşitleyip yine SEHIR Editine veya başka bir şeyi SEHIR Editine 'ye eşlemiş olabilir misiniz?

Ayrıca SEHIR Edit'nin onchange gibi eventinde sayı yoksa yazma vs gibisinden bir denemeniz olabilir mi

ya da ya da ya da diye uzayacak

Bırakın SEHIR Edit'i önce bir ShowMessage ile S' yi aracısız sonucu görün ondan sonra soruna odaklanın isterseniz
Saygılarımla
Muharrem ARMAN

guplouajuixjzfm15eqb.gif


Cevapla
#7
(04-03-2019, Saat: 11:46)mrmarman Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Üye Olmanız Gerekiyor. Üye Olabilmek İçin Lütfen Buraya Tıklayınız.Buton tıkladığınız Procedure içini tamamen buraya yazar mısınız?

variable tanımını nerede yaptınız, takip eden satırda yine s'yi başka bir şeye eşitleyip yine SEHIR Editine veya başka bir şeyi SEHIR Editine 'ye eşlemiş olabilir misiniz?

Ayrıca SEHIR Edit'nin onchange gibi eventinde sayı yoksa yazma vs gibisinden bir denemeniz olabilir mi

ya da ya da ya da diye uzayacak

Bırakın SEHIR Edit'i önce bir ShowMessage ile S' yi aracısız sonucu görün ondan sonra soruna odaklanın isterseniz


Merhaba,
Konu ile alakası yok ama kısa bir ara olsun. Smile
Siz tüm olabilecek mantıksal hata veya mantıksal önerileri sununca aklıma IDE ne zaman bu seviyeye gelebilir diye düşündüm.
Yapay zekanın IDE'ye uyarlanmış halini görebilecek miyiz acaba? Blush
While true do; Hayat döngüsü, kısır değildir! Yapılan bir yanlış, o döngünün dışına çıkmanızı sağlayacaktır.
WWW
Cevapla
#8
Fesih bey çıkarsa google da yarar. Yükünü hafifletmiş olur. Hep ona soruyoruz hiç onu dinleyen yok Smile)))

Mericx, arkadaşım şöyle yaparsan komutun çalıştığını senin başka biryerde hata yaptığını göreceksin. Acaba sen sonucu alıp edite yazdırdıktan sonra Sehir.text dediğin editi ,   Sehir.text=' ' diyerek acaba sıfırlıyor olabilir misin. Onu kontrol et.


var

s:string;

begin
s:='deneme';
showmessage(ansirightstr(s,2));
end;
Cevapla
#9
(04-03-2019, Saat: 12:55)CesuR Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Üye Olmanız Gerekiyor. Üye Olabilmek İçin Lütfen Buraya Tıklayınız.Fesih bey çıkarsa google da yarar. Yükünü hafifletmiş olur. Hep ona soruyoruz hiç onu dinleyen yok Smile)))

Mericx, arkadaşım şöyle yaparsan komutun çalıştığını senin başka biryerde hata yaptığını göreceksin. Acaba sen sonucu alıp edite yazdırdıktan sonra Sehir.text dediğin editi ,   Sehir.text=' ' diyerek acaba sıfırlıyor olabilir misin. Onu kontrol et.


var

s:string;

begin
s:='deneme';
showmessage(ansirightstr(s,2));
end;

Aslında hayır ='' diyerek boş yapmadım içini ama neden boş döndüğünü anlamadım. Fesih beyin önerdiği Yöntem iki ile düzgün çalıştı ama şuan. Sebebini anlayamadım cidden ama bakıyorum şuan kodlara tekrar...

(04-03-2019, Saat: 11:01)Fesih ARSLAN Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Üye Olmanız Gerekiyor. Üye Olabilmek İçin Lütfen Buraya Tıklayınız.Merhaba,
RightStr fonksiyonu ile de yapabilmeniz gerekiyordu. Kullandığınız yöntem doğrudur.
Farklı iki yöntem daha sunayım fakat her iki yöntem de iki medodun çalıştığını unutmayın. 
RightStr yönteminde tek metod çalışıyorken, Copy ve SubString yönteminde iki ayrı metod kullanılıyor.
I.Yöntem:
s.Substring(s.Length - 4)
II.Yöntem:
Copy(s, s.Length - 3, s.Length)

Yardımınız için çok teşekkür ederim 2.yöntem ile gayet güzel çalıştı Smile

Yazdığım kodda düzgün gözüküyor ama içini sıfırlamadığım halde boş değer geliyordu.Bir yerde hata mı yaptım onu inceliyorum şuan.
Don't fear the try!
Cevapla


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  Çözüldü. Fastreport ta çalışma anında dataset atama cinarbil 2 90 11-07-2019, Saat: 17:55
Son Yorum: cinarbil
  Çözüldü-sql kodu dengesiz çalışıyor sadikacar60 4 223 11-07-2019, Saat: 14:28
Son Yorum: mcuyan
  [ÇÖZÜLDÜ] WebDav ile Bulut Sunucuya Dosya Yükleme theSinan 4 316 08-07-2019, Saat: 15:42
Son Yorum: r3n4m3
  Çözüldü - FastReport Pivot ve Group birlikte kullanılabilirmi ? adelphiforumz 5 261 05-07-2019, Saat: 14:20
Son Yorum: adelphiforumz
  [ÇÖZÜLDÜ] Windows Service içerisinden başka uygulama çalışmasını kontrol etme theSinan 2 238 08-06-2019, Saat: 12:17
Son Yorum: elixir84



Konuyu Okuyanlar: 1 Ziyaretçi