Как в с++ в регулярном выражении задать символ `“`?

Пользователь

от dan_farrell , в категории: C/C++ , 6 месяцев назад

Как в с++ в регулярном выражении задать символ `“`?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от linnea , 5 месяцев назад

@dan_farrell 

В языке C++, символ " (двойная кавычка) является специальным символом и должен экранироваться с помощью обратной косой черты :

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
#include 
#include 

int main() {
    std::string str = "Hello "World"";
    std::regex reg(""");
    
    std::sregex_token_iterator iter(str.begin(), str.end(), reg, -1);
    std::sregex_token_iterator end;
    
    while (iter != end) {
        std::cout << *iter << std::endl;
        ++iter;
    }
    
    return 0;
}


В этом примере используется регулярное выражение, которое ищет символ " в строке str и разделяет ее на подстроки с помощью std::sregex_token_iterator.