else i++;
	public String substitute(String text)	{		StringBuffer buf = null;		int lastMatch = 0;		int searchLen = search.length();		int len = text.length() - searchLen + 1;		boolean matchFound = false;		int i = 0;		while(i < len)		{			if(text.regionMatches(ignoreCase,i,search,0,searchLen))			{				if(buf == null)					buf = new StringBuffer();				if(i != lastMatch)					buf.append(text.substring(lastMatch,i));				buf.append(replace);				i += searchLen;				lastMatch = i;				matchFound = true;			}			else				i++;		}		if(!matchFound)			return null;		if(text.length() != lastMatch)			buf.append(text.substring(lastMatch,text.length()));		return buf.toString();	}