C++ string rfind如何確定搜索起點(diǎn)

c++
小樊
89
2024-07-19 03:19:39
欄目: 編程語言

在C++中,rfind函數(shù)用于在字符串中從右向左搜索指定子字符串,并返回其最后一次出現(xiàn)的位置。如果要指定搜索的起點(diǎn),可以使用重載版本的rfind函數(shù),該函數(shù)接受一個(gè)額外的參數(shù)作為搜索的起點(diǎn)位置。

例如,以下是使用重載版本的rfind函數(shù)來指定搜索起點(diǎn)的示例:

#include <iostream>
#include <string>

int main() {
    std::string str = "Hello, World!";
    
    // 搜索字符串中從位置5開始的子字符串"World"
    size_t pos = str.rfind("World", 5);
    
    if (pos != std::string::npos) {
        std::cout << "Found at position: " << pos << std::endl;
    } else {
        std::cout << "Substring not found." << std::endl;
    }
    
    return 0;
}

在上面的示例中,rfind("World", 5)指定了從字符串的第5個(gè)位置開始搜索子字符串"World"。如果找到了子字符串,則返回其最后一次出現(xiàn)的位置;否則返回std::string::npos

0