Getting a substring from a string after a particular word

You may try this

String example = "ABC Results for draw no 2888";
System.out.println(example.substring(example.lastIndexOf(" ") + 1));

yourString.substring(yourString.indexOf("no") + 3 , yourString.length());

You always want to strive something that is easy to configure and modify. That is why I always recommend to choose Regex Pattern matching over other searches.

Example, consider this for your example:

import java.util.regex.Matcher;
import java.util.regex.Pattern;


public class Play {
  public static void main(String args[]) { 
    Pattern p = Pattern.compile("^(.*) Results for draw no (\\d+)$");
    Matcher m = p.matcher("ABC Results for draw no 2888");
    m.find();
    String groupName = m.group(1);
    String drawNumber = m.group(2);
    System.out.println("Group: "+groupName);
    System.out.println("Draw #: "+drawNumber);
  }
}

Now from the provided pattern, I can easily identify the useful parts. It helps me to identify problems, and I can identify additional parts in the pattern that is useful to me (I have added the group-name).

Another clear benefit is that I can store easily this pattern externally in a configuration file.