избавиться от регулярного компиляции без использования "#include" - PullRequest
0 голосов
/ 19 февраля 2019

Я использую regex в vxworks и не могу включить "regex.h".

Я получаю "неопознанную символьную escape-последовательность" для кода компилятора из-за '\'и следующее '['.

Есть ли возможность избавиться от этого предупреждения компилятора без использования regex.h и подобных вещей, как это сделано здесь: Невозможно сопоставить регулярное выражение в C

1 Ответ

0 голосов
/ 19 февраля 2019

Возможно, вы захотите попробовать что-то вроде

#include <stdio.h>

int main(void) {
    char buf[99];
    int idx, n;
    while (fgets(buf, sizeof buf, stdin)) {
        buf[strcspn(buf, "\n")] = 0; // remove ENTER
        if (sscanf(buf, "%*[^[][%d%n", &idx, &n) != 1) {
            printf("no number in %s\n", buf);
        } else {
            printf("number found: %d (left over string: \"%s\")\n", idx, buf + n);
        }
    }
    return 0;
}

См. Код, работающий на ideone

...