2012-07-18 15 views
7

Bunun için her yeri araştırdım. Delphi/Lazarus'ta, bir pozisyon verildiğinde, bu pozisyondaki karakteri farklı bir dizede bulmak istiyorum. Bir karakterin konumunu nasıl bulacağımı biliyorum. Buna başka bir şekilde ihtiyacım var: belirli bir pozisyondaki karakter. Şimdiden teşekkürler.Delphi - belirli bir konum/dizin karakteri bul

cevap

12

Delphi'de, dizgedeki bir karakter dizi gösterimi kullanılarak dizine eklenebilir. Sadece dizedeki ilk karakterin bir indeksi olduğuna dikkat edin.

var 
    s: string; 
    c: char; 
begin 
    s := 'Hello'; 
    c := s[1]; //H 
end; 
+0

Not: Karakterler 1 tabanlı. –

5

Bir dize bir dizi gibi erişilebilir.

MyString [12] dizede 12. karakteri gösterir.

var 
    MyString : String; 
    MyChar : Char; 
begin 
    MyString := 'This is a test'; 
    MyChar := MyString[4]; //MyChar is 's' 
end; 
0

Bu, 2012 yılında cevap, bu yüzden düşündüm ben sadece bir son eklersiniz edildi: Not:

Örnek (0 pozisyon dize uzunluğunu tutmak için kullanılan çünkü) Bu 1 endeksidir Güncelleştirme:

Delphi'nin en son sürümü için (Şu anda Tokyo Edition - FMX çerçevesini kullanarak birden çok platform üzerinde çalışan), StringHelper sınıfı bir çapraz platform karakter dizini çözümü sunar. Bu uygulama desteklenen tüm platformlar için 0 tabanlı bir dizin varsaymaktadır. Örn.,

örn.

var 
    myString: String; 
    myChar: Char; 
begin 
    myChar := myString.Chars[0]; 
end;