文字列の比較
CoddyのC++ジャーニー「基礎」セクションの一部。レッスン 22/74。
C++では、文字列の比較には複数の方法があります。 std::stringはクラスなので、文字列の比較を直感的かつ簡単に行えるように、演算子がオーバーロードされています。
文字列を比較する最も一般的な方法は、比較演算子(==, !=, <, >, <=, >=)を使うことです:
string str1 = "hello";
string str2 = "hello";
string str3 = "Hello";
bool result1 = (str1 == str2); // true
bool result2 = (str1 == str3); // false (大文字と小文字を区別)
bool result3 = (str1 != str3); // truecompare()メソッドも使用できます。このメソッドは、文字列が等しい場合は0、最初の文字列が辞書順で小さい場合は負の整数、大きい場合は正の整数を返します。正確な値は実装によって定義される点に注意してください。必ずしも-1または1とは限りません。
string str1 = "a";
string str2 = "b";
string str3 = "c";
cout << str2.compare(str1) << endl;
// 正の値(b は a より後に来る)
cout << str2.compare(str3) << endl;
// 負の値(b は c より前に来る)
cout << str2.compare(str2) << endl;
// 0(文字列が等しい)自分で試してみよう
このレッスンにはコードチャレンジは含まれていません。
このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。
基礎のすべてのレッスン
自分で練習してみよう: C++オンラインコンパイラ