Merhaba,
Bir metin içerisindeki veriyi, belirlediğimiz başka bir veriyle değiştirebiliriz. Bunun için StringReplace fonksiyonunu kullanacağız.
StringReplace fonksiyonu SysUtils.pas içerisinde bulunur. Uses kısmına SysUtils ekleyerek rahatça ulaşabiliriz.
function StringReplace ( const SourceString, OldPattern, NewPattern : string; Flags : TReplaceFlags ) : string;
şeklinde tanımlanmıştır. Hadi bunu biraz açalım..
SourceString -> ana metnimizi tanımlayacağımız yer.
OldPattern -> metin içerisinde aranacak dizi
NewPattern -> ana metnimizde OldPattern yerine yazılacak dizi
Flags -> yazma izinleri
Örnek vererek devam edelim;
var metin,sonra : String; begin metin := 'anfidya''ya el salla'; sonra := StringReplace(metin,'el','kol',[rfReplaceAll, rfIgnoreCase]); end;
Yukarıda “anfidya’ya el salla’ yazısındaki “el” metnini “kol” olarak değiştirdik. Eğer “metin” ve “sonra” değişkenlerini ShowMessage ile ekrana bastırırsak karşımıza şöyle bir sonuç çıkacaktır;
anfidya'ya el salla anfidya'ya kol salla
Flags kısmına gelen yerde iki tane tanım kullandık. Bunlar rfReplaceAll ve rfIgnoreCase.
rfReplaceAll -> metin içerisinde bulunan tüm eşleşmeleri değiştirir.
rfIgnoreCase -> metin içerisinde eşleşme yaparken küçük,büyük harf uyumuna dikkat etmez.