Heim >Backend-Entwicklung >C++ >Wie kann man alle Zeichenvorkommen in einem C-String effizient ersetzen?

Wie kann man alle Zeichenvorkommen in einem C-String effizient ersetzen?

Linda Hamilton
Linda HamiltonOriginal
2024-12-28 01:05:09609Durchsuche

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

Alle Zeichenvorkommen in einer Zeichenfolge ersetzen

Frage:

Wie kann ich effizient ersetzen? alle Vorkommen eines bestimmten Zeichens mit einem anderen Zeichen in einem std::string in C ?

Antwort:

Während std::string hierfür keine integrierte Funktion bereitstellt, können Sie die eigenständige Ersetzungsfunktion aus dem Algorithmus-Header verwenden . So geht's:

#include <algorithm>
#include <string>

void replace_characters(std::string& s, char old_char, char new_char) {
  std::replace(s.begin(), s.end(), old_char, new_char); // replace all old_char with new_char in s
}

Beispiel:

int main() {
  std::string s = "example string";
  replace_characters(s, 'x', 'y'); // replace all 'x' with 'y'
  std::cout << s << std::endl; // Output: "example string" with 'x' replaced by 'y'
  return 0;
}

Das obige ist der detaillierte Inhalt vonWie kann man alle Zeichenvorkommen in einem C-String effizient ersetzen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn