package com.javarush.test.level22.lesson05.task01;

import java.util.StringTokenizer;

/* Найти подстроку
Метод getPartOfString должен возвращать подстроку начиная с символа после 1-го пробела и до конца слова,
которое следует после 4-го пробела.
Пример: "JavaRush - лучший сервис обучения Java."
Результат: "- лучший сервис обучения"
На некорректные данные бросить исключение TooShortStringException (сделать исключением).
Сигнатуру метода getPartOfString не менять.
Метод main не участвует в тестировании.
*/
public class Solution {
    public static void main(String[] args) throws TooShortStringException {
        System.out.println(getPartOfString("Предположим, у вас есть строковый массив, определенный в файле strings.xml под именем cats_array."));
    }

    public static String getPartOfString(String string) throws TooShortStringException {
        try {
            int spaceCount = 0;
            for (int i = 0; i < 4; i++) spaceCount = string.indexOf(" ", spaceCount + 1);
            StringTokenizer st = new StringTokenizer(string.substring(spaceCount), " .,;:");
            return (string.substring(string.indexOf(" ") + 1, spaceCount + 1)) + st.nextToken();
        } catch (Exception e) {
            throw new TooShortStringException();
        }
    }

    public static class TooShortStringException extends Throwable {
        private static final long serialVersionUID = -6201236245739521778L;
    }
}