How to check if a string starts with a specified substring in C++

2 Answers

0 votes
#include <iostream>
#include <string>

bool startsWith(const std::string& str, const std::string& substr) {
    return str.find(substr) == 0;
}

int main() {
    std::string str = "CPP run desktop applications";
    std::string substr = "CPP";
    
    if (startsWith(str, substr)) {
        std::cout << "yes" << std::endl;
    } else {
        std::cout << "no" << std::endl;
    }
}



/*
run:

yes

*/

 



answered Feb 9 by avibootz
0 votes
#include <algorithm>
#include <iostream>
#include <string>

std::string toLower(std::string s) {
    std::transform(s.begin(), s.end(), s.begin(), ::tolower);
    
    return s;
}

bool startsWith(const std::string& str, const std::string& substr) {
    return toLower(str).find(toLower(substr)) == 0;
}

int main() {
    std::string str = "cpp run desktop applications";
    std::string substr = "CPP";
    
    if (startsWith(str, substr)) {
        std::cout << "yes" << std::endl;
    } else {
        std::cout << "no" << std::endl;
    }
}



/*
run:

yes

*/

 



answered Feb 9 by avibootz
...