How to compare two strings ignoring the case in C++

3 Answers

0 votes
#include <iostream>
#include <cstring>
 
int main() {
    std::string s1 = "C++ PROGRAMMING";
    std::string s2 = "c++ programming";
     
    if (strcasecmp(s1.c_str(), s2.c_str()) == 0) {
        std::cout << "s1 == s2";
    } else {
        std::cout << "s1 != s2";
    }
}

 
 
/*
run:
 
s1 == s2
 
*/

 



answered May 9, 2021 by avibootz
edited Aug 23, 2024 by avibootz
0 votes
#include <iostream>
#include <cstring>
 
int main() {
    std::string s1 = "C++ PROGRAMMING";
    std::string s2 = "c++ programming";
     
    if (strncasecmp(s1.c_str(), s2.c_str(), s1.size()) == 0) {
        std::cout << "s1 == s2";
    } else {
        std::cout << "s1 != s2";
    }
}

 
 
/*
run:
 
s1 == s2
 
*/

 



answered May 9, 2021 by avibootz
edited Aug 23, 2024 by avibootz
0 votes
#include <iostream>
#include <algorithm>
 
std::string toLower(std::string s) {
    transform(s.begin(), s.end(), s.begin(),
               [](unsigned char ch){ return std::tolower(ch); });
    return s;
}
 
int main() {
    std::string s1 = "C++ PROGRAMMING";
    std::string s2 = "c++ programming";
     
     if (toLower(s1) == toLower(s2)) {
        std::cout << "s1 == s2";
    } else {
        std::cout << "s1 != s2";
    }
}

 
 
/*
run:
 
s1 == s2
 
*/

 



answered May 9, 2021 by avibootz
edited Aug 23, 2024 by avibootz

Related questions

1 answer 178 views
1 answer 142 views
142 views asked Aug 23, 2024 by avibootz
1 answer 140 views
1 answer 132 views
2 answers 154 views
1 answer 130 views
1 answer 116 views
...