Java同じ名前の関数のような、一致する文字列の整数を返すstd名前空間からの文字列indexof関数を探しています。次のようなもの:
std::string Word = "bob";
int matchIndex = getAString().indexOf( Word );
ここで、getAString()は次のように定義されています。
std::string getAString() { ... }
find
関数を試してください。
これは私がリンクした記事の例です:
string str1( "Alpha Beta Gamma Delta" );
string::size_type loc = str1.find( "Omega", 0 );
if( loc != string::npos ) {
cout << "Found Omega at " << loc << endl;
} else {
cout << "Didn't find Omega" << endl;
}
例から「bob」を検索する文字列は明確ではありませんが、C++で find を使用して部分文字列を検索する方法を次に示します。
string str1( "Alpha Beta Gamma Delta" );
string::size_type loc = str1.find( "Omega", 0 );
if( loc != string::npos )
{
cout << "Found Omega at " << loc << endl;
}
else
{
cout << "Didn't find Omega" << endl;
}
std::basic_string<>
関数テンプレートを探しています:
size_type find(const basic_string& s, size_type pos = 0) const;
これはインデックスを返すか、文字列が見つからない場合はstd::string::npos
を返します。