#include <stdio.h>
#include <regex.h>
#include <stdlib.h>
#define REGEX "prefix:\\w+,\\w+,\\s*-?[0-9]{1,4}\\s*,\\s*-?[0-9]{1,4}\\s*,\\s*-?[0-9]{1,4}\\s*,\\w*"
const char *input = "prefix:string,string,-100,100,0,string";
int main(){
int rc;
regex_t regex;
rc = regcomp(®ex, REGEX, REG_EXTENDED);
if (rc != 0) {
fprintf(stderr
, "Could not compile regex\n"); }
rc = regexec(®ex, input, 0, NULL, 0);
if (rc == 0) {
return 0;
}
else if (rc == REG_NOMATCH) {
return -1;
}
else {
}
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxyZWdleC5oPiAgICAgICAgCiNpbmNsdWRlIDxzdGRsaWIuaD4KIAojZGVmaW5lIFJFR0VYICJwcmVmaXg6XFx3KyxcXHcrLFxccyotP1swLTldezEsNH1cXHMqLFxccyotP1swLTldezEsNH1cXHMqLFxccyotP1swLTldezEsNH1cXHMqLFxcdyoiCiAKY29uc3QgY2hhciAqaW5wdXQgPSAicHJlZml4OnN0cmluZyxzdHJpbmcsLTEwMCwxMDAsMCxzdHJpbmciOwppbnQgbWFpbigpewogCiAgICBpbnQgcmM7CiAKICAgIHJlZ2V4X3QgcmVnZXg7CiAKICAgIHJjID0gcmVnY29tcCgmcmVnZXgsIFJFR0VYLCBSRUdfRVhURU5ERUQpOwogICAgaWYgKHJjICE9IDApIHsKICAgICAgICBmcHJpbnRmKHN0ZGVyciwgIkNvdWxkIG5vdCBjb21waWxlIHJlZ2V4XG4iKTsKICAgICAgICBleGl0KDEpOwogICAgfQogCiAgICByYyA9IHJlZ2V4ZWMoJnJlZ2V4LCBpbnB1dCwgMCwgTlVMTCwgMCk7CiAgICBpZiAocmMgPT0gMCkgewogICAgICAgIHByaW50ZigiTWF0Y2ghXG4iKTsKICAgICAgICByZXR1cm4gMDsKICAgIH0KICAgIGVsc2UgaWYgKHJjID09IFJFR19OT01BVENIKSB7CiAgICAgICAgcHJpbnRmKCJObyBtYXRjaFxuIik7CiAgICAgICAgcmV0dXJuIC0xOwogICAgfQogICAgZWxzZSB7CiAgICAgICAgcGVycm9yKCJFcnJvclxuIik7CiAgICAgICAgZXhpdCgxKTsKICAgIH0KIAogICAgcmV0dXJuIDA7Cn0=