I'm looking for a string indexof function from the std namespace that returns an integer of a matching string similar to the java function of the same name. Something like:
std::string word = "bob"; int matchIndex = getAString().indexOf( word );
where getAString() is defined like this:
std::string getAString() { ... }
The indexOf() method returns the position of the first occurrence of specified character(s) in a string. Tip: Use the lastIndexOf method to return the position of the last occurrence of specified character(s) in a string.
To get the index of a character's last occurrence in a string, you use the lastIndexOf() method, passing it the specific character as a parameter. This method returns the index of the last occurrence of the character or -1 if the character is not found.
Try the find
function.
Here is the example from the article I linked:
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; }
It's not clear from your example what String you're searching for "bob" in, but here's how to search for a substring in C++ using 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; }
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With