Я пытаюсь сопоставить символы со следующим регулярным выражением: ((?<!-)[<>])
C ++ Функция:
vector<string> regexSearch(string str, string regEx) {
vector <string> result;
smatch matches;
regex reg(regEx);
// Search string
while (regex_search(str, matches, reg)) {
result.push_back(matches.str(1));
str = matches.suffix().str();
}
return result;
}
Вызов функции:
symbols = regexSearch(input, "((?<!-)[<>])");
Входные данные представляют собой строкучитать из файла .txt и выглядит так:
4 5
1 > 2
3 > 2
3 < 4
1 < 3
4 > 2
При запуске программы происходит сбой, и я получаю ошибку Invalid special open parenthesis
.