Here is the solution my friend (note the regular expression):
import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Pr_06_StartsAndEndsWithCapitalLetter {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String input = scanner.nextLine();
Pattern pattern = Pattern.compile("\\b([A-Z])+([a-zA-Z]+)?([A-Z])\\b");
Matcher matcher = pattern.matcher(input);
while (matcher.find()) {
System.out.println(matcher.group());
}
}
}
Read here more: http://www.regular-expressions.info/wordboundaries.html and note that \b is a word boundary. It matches the beginning and ending of a word