+#define RULE_MATCH(s,r) rule_match((s), (r), sizeof (r) - 1)
+
+static const char *rule_match(const char *str, const char *rule, int rule_len)
+{
+ if (strncmp(str, rule, rule_len) != 0)
+ return NULL;
+ if (isspace(str[rule_len]) || str[rule_len] == '_' || !str[rule_len])
+ return str + rule_len - 1;
+ if (str[rule_len] == ',')
+ return str + rule_len;
+ return NULL;
+}