Exemple #1
0
int StringData::findNoCase(const StringData& match, int start/*=0*/)
{
	const char* pStrCompare = match.getDataBuf();
	const char* pStr = getDataBuf();
	int iLen = match.length();
	int iMaxLen = length();
	for (int i = 0; i <= iMaxLen - iLen; i++)
	{
		if (!compareNoCase(pStr + i, pStrCompare, iLen))
			return i;
	}
	return -1;
}
Exemple #2
0
int StringData::findlastNoCase(const StringData& match, int stop/*=-1*/) const
{
	if (stop >= (int) buf.size() || stop <= 0)
		stop = buf.size() - 1;
	const char* pStr = buf.c_str();
	const char* pCompare = match.getDataBuf();
	int len = match.length();
	for (int i = stop - len + 1; i >= 0; i--)
	{
		if (!compareNoCase(pStr + i, pCompare, len))
			return i;
	}
	return -1;
}