The following function will work for you even though it does not have all the options as okutil_find_strings.
int find_strings(StringArray& saFound, StringArray& saSearch, LPCSTR lpszFindThis, bool bCaseSensitive)
{
saFound.SetSize(0);
for (int i = 0; i < saSearch.GetSize(); ++i)
{
if (saSearch[i].Match(lpszFindThis, bCaseSensitive))
saFound.Add(saSearch[i]);
}
return saFound.GetSize();
}
void test_find_strings()
{
StringArray saSearch;
saSearch.Add("20110605_QSet_Repeat1ZRA");
saSearch.Add("20110716_QSet_Blue1YRB");
saSearch.Add("20110716_RSet_Blue1YRB");
saSearch.Add("20110830_QSet_Green2XRC");
saSearch.Add("20110716_TSet_Blue1YRB");
saSearch.Add("20110917_QSet_Red3XRD");
StringArray saFound;
int nFound = find_strings(saFound, saSearch, "*QSet*", false);
printf("Found %d matches:\n", nFound);
for (int i = 0; i < saFound.GetSize(); ++i)
printf("%d %s\n", i, saFound[i]);
}