Javadoc of StringUtils.ordinalIndexOf states the following:
"The code increments the starting index by one, rather than by the length of the match string, so matches may overlap."
But then gives the following example:
StringUtils.ordinalIndexOf("aabaabaa", "", 2) = 0
which clearly indicates that it does not increment the starting index by one in case of the empty string.