Heim > Artikel > Backend-Entwicklung > Wie kann man in C feststellen, ob eine Zeichenfolge mit einer bestimmten Teilzeichenfolge endet?
String-Enden in C bestimmen
Eine häufige Operation bei der String-Manipulation ist die Überprüfung, ob ein gegebener String mit einem anderen endet. Diese Funktionalität ist in verschiedenen Anwendungen von entscheidender Bedeutung, einschließlich Textverarbeitung, Mustervergleich und Dateianalyse.
In C gibt es mehrere Möglichkeiten, um festzustellen, ob eine Zeichenfolge mit einer bestimmten Teilzeichenfolge endet. Eine effiziente Methode besteht darin, die Funktion std::string::compare zu verwenden, die in der Standard-C-Bibliothek verfügbar ist.
Die Vergleichsfunktion vergleicht zwei Zeichenfolgen und gibt einen ganzzahligen Wert zurück, der das Ergebnis darstellt. Indem wir den letzten Teil der Originalzeichenfolge mit der potenziellen Teilzeichenfolge am Ende vergleichen, können wir feststellen, ob sie übereinstimmen.
Der folgende Code zeigt, wie dieser Ansatz implementiert wird:
<code class="cpp">#include <iostream> bool hasEnding(const std::string& fullString, const std::string& ending) { if (fullString.length() >= ending.length()) { return (0 == fullString.compare(fullString.length() - ending.length(), ending.length(), ending)); } else { return false; } } int main() { std::string test1 = "binary"; std::string test2 = "unary"; std::string test3 = "tertiary"; std::string test4 = "ry"; std::string ending = "nary"; std::cout << hasEnding(test1, ending) << std::endl; std::cout << hasEnding(test2, ending) << std::endl; std::cout << hasEnding(test3, ending) << std::endl; std::cout << hasEnding(test4, ending) << std::endl; return 0; }</code>
In diesem Code definieren wir zunächst eine Funktion hasEnding, die zwei Zeichenfolgen als Eingabe akzeptiert. Die Funktion gibt einen booleschen Wert zurück, der angibt, ob die erste Zeichenfolge mit der zweiten endet.
Innerhalb der Funktion prüfen wir, ob die Länge der ersten Zeichenfolge größer oder gleich der Länge der zweiten Zeichenfolge ist. Wenn nicht, gibt die Funktion „false“ zurück.
Wenn die Längenprüfung erfolgreich ist, verwenden wir „Vergleichen“, um den letzten Teil der ersten Zeichenfolge mit der zweiten Zeichenfolge zu vergleichen. Die Vergleichsfunktion gibt 0 zurück, wenn die beiden Zeichenfolgen gleich sind. Dies überprüfen wir, um festzustellen, ob die erste Zeichenfolge mit der zweiten endet.
Die Hauptfunktion testet die hasEnding-Funktion mit mehreren Eingabezeichenfolgen und gibt die Ergebnisse aus.
Das obige ist der detaillierte Inhalt vonWie kann man in C feststellen, ob eine Zeichenfolge mit einer bestimmten Teilzeichenfolge endet?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!