CodeBlanks Logo Icon CodeBlanks

String değiştirme

.replace() ve .insert() ile dize değiştirmeyi öğrenirsin.

replace ile parça değiştirme

string sınıfının .replace() metodu, bir dizenin belirli bir konumdan başlayan parçasını başka bir dizeyle değiştirir. İlk parametre başlangıç konumu, ikinci parametre silinecek karakter sayısı, üçüncü parametre yerine konacak dizedir.

string s = "merhaba dünya";
s.replace(8, 5, "c++");  // "merhaba c++"

Burada 8 konumundan itibaren 5 karakter ("dünya") silinir, yerine "c++" konur. Konumlar sıfırdan başlar; bu yüzden s[0] ilk karakterdir. Dize uzunluğunu .size() metoduyla öğrenebilirsin.

insert ile ekleme

.insert() metodu, bir dizeyi belirli bir konuma araya sokar; mevcut karakterler sağa kayar. İlk parametre ekleme konumu, ikinci parametre eklenecek dizedir.

string s = "merhaba";
s.insert(0, "selam ");  // "selam merhaba"

Burada 0 konumuna "selam " dizesi eklenir; orijinal "merhaba" sağa kayar. insert ile bir dizenin başına, ortasına veya sonuna yeni parçalar yerleştirebilirsin; dize otomatik olarak uzar.

Uygulama replace ile parça değiştir

string s = "merhaba dünya"; tanımla. s.replace(8, 5, "c++"); ile 8 konumundan 5 karakteri silip yerine "c++" koy. Sonra cout << s << endl; ile yazdır.

Başlangıç kodu

main.cpp
#include <iostream>
#include <string>
using namespace std;

int main() {
    string s = "merhaba dünya";
    // replace ile 8. konumdan 5 karakteri "c++" ile değiştir, yazdır
    return 0;
}

Örnek çözüm

main.cpp
#include <iostream>
#include <string>
using namespace std;

int main() {
    string s = "merhaba dünya";
    s.replace(8, 5, "c++");
    cout << s << endl;
    return 0;
}

Beklenen çıktı

merhaba c++

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 Boşluğu doldur: replace çağrısı

Soru
string s = "yeşil yaprak";
s.____(6, 5, "kuş");
Cevap
string s = "yeşil yaprak";
s.replace(6, 5, "kuş");

Açıklama: replace ile parça değiştirirsin.

2 s.insert(0, "x") ne yapar?

  • s'nin başına "x" ekler Doğru cevap
  • s'nin sonuna "x" ekler
  • s'nin ilk karakterini siler
  • s'yi "x" ile değiştirir

Açıklama: 0 konumu başı ifade eder; "x" en başa eklenir.

3 Metodu göreviyle eşleştir

Kavram Anlamı
replace Parça değiştirir
insert Araya sokar
size Uzunluk verir

Başlangıç bölümündeki tüm dersler