[英]Java-like lastIndexOf in c++
看來您可能想要std::string::find_last_of
。
查找等於給定字符序列中一個字符的最后一個字符。 返回找到的字符或npos的位置(如果找不到)。
編輯:
另請參閱hmjd的答案。 find_last_of
和rfind
之間有區別,這取決於您要搜索的是單個字符,許多可能的字符之一還是子字符串。
std::string
具有成員函數rfind()
,該函數從末尾開始搜索,如果找到則返回索引,否則返回std::string::npos
。 從鏈接的參考頁面:
查找等於給定字符序列的最后一個子字符串。
當然,您可以將std::find
與reverse_iterator
一起使用。 例如,您有一個整數向量,並且想要在其中找到最后5個。 你做
auto it = std::find(v.rbegin(), v.rend(), 5);
如果您本身想要索引,則可以從迭代器中獲取
int index = std::distance(v.begin(), (it+1).base());
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.