2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
41#ifndef DOXYGEN_SHOULD_SKIP_THIS
43#include "CiStringMap.h"
53 bool ciContains(
const std::string& str1,
const std::string& str2) {
54 auto it = std::search(str1.begin(), str1.end(), str2.begin(), str2.end(), [](
char ch1,
char ch2) {
55 return std::tolower(ch1) == std::tolower(ch2);
58 return (it != str1.end());
61 bool ciEquals(
const std::string& str1,
const std::string& str2) {
62 return std::equal(str1.begin(), str1.end(), str2.begin(), str2.end(), [](
char ch1,
char ch2) {
63 return std::tolower(ch1) == std::tolower(ch2);
68 return ::strcasecmp(a.c_str(), b.c_str()) < 0;
bool ciEquals(const std::string &str1, const std::string &str2)
bool ciContains(const std::string &str1, const std::string &str2)
bool operator()(const std::string &a, const std::string &b) const