//字符串匹配,匹配返回 1,否则返回 0. //pattern可以通过任意个 | 字符,组合match_one中pattern的功能 int match(const char* pattern, const char* string) { const char* or; for (;;) { or = strchr(pattern, '|'); if (or == (char*)0) return match_one(pattern, strlen(pattern), string); if (match_one(pattern, or - pattern, string)) return 1; pattern = or + 1; } } /* 对于pattern中的字符: ?:匹配任意单个字符 **:匹配任意长度字符串 *:匹配任意长度字符串,直到遇到 / */ static int match_one(const char* pattern, int patternlen, const char* string) { const char* p; for (p = pattern; p - pattern < patternlen; ++p, ++string) { if (*p == '?' && *string != '