Rumah >pembangunan bahagian belakang >C++ >Bagaimana untuk Menggantikan Semua Kejadian Watak dalam Rentetan C?

Bagaimana untuk Menggantikan Semua Kejadian Watak dalam Rentetan C?

DDD
DDDasal
2024-12-21 12:57:20540semak imbas

How to Replace All Occurrences of a Character in a C   String?

Menggantikan Semua Kejadian Watak dalam Rentetan

Dalam C , kelas std::string tidak menyediakan kaedah khusus untuk menggantikan aksara dalam rentetan. Walau bagaimanapun, anda boleh menggunakan fungsi std::replace daripada pengepala, yang beroperasi pada iterator, untuk melaksanakan tugas ini dengan berkesan.

Pertimbangkan coretan kod berikut:

#include <algorithm>
#include <string>

void replace_character(std::string& str, char old, char new) {
  std::replace(str.begin(), str.end(), old, new);
}

Fungsi replace_character mengambil rujukan kepada rentetan, aksara yang akan diganti ( lama), dan watak pengganti (baru). Ia menggunakan fungsi std::replace untuk mengubah suai semua kejadian lama dengan baharu dalam rentetan.

Contohnya:

std::string str = "Hello, world!";
replace_character(str, 'l', 'x');

// Output: "Hexxo, worxd!"

Coretan kod ini menggantikan semua kejadian aksara 'l' dengan 'x' dalam rentetan str. Ambil perhatian bahawa rentetan asal diubah suai di tempatnya.

Atas ialah kandungan terperinci Bagaimana untuk Menggantikan Semua Kejadian Watak dalam Rentetan C?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn