Найти подстроку

  • 24
  • Недоступна
Метод getPartOfString должен возвращать подстроку начиная с символа после 1-го пробела и до конца слова, которое следует после 4-го пробела. Пример: "JavaRush - лучший сервис обучения Java." Результат: "- лучший сервис обучения"
Вы не можете решать эту задачу, т.к. не залогинены.
Комментарии (158)
  • популярные
  • новые
  • старые
Для того, чтобы оставить комментарий вы должны авторизоваться
6 June, 15:08
string.split(" ");
😁
Женя23 уровень, Пинск
вчера, 13:32
с indexOf() тоже достаточно просто решается - 7 строк кода, даже непонятно почему сложность у задачи hard. Единственное что сразу не совсем очевидно, что нужна проверка на null
Vladimir Galkov30 уровень, Самара
16 May, 20:17
халява какая-то
Lada Dreamland28 уровень, Днепр
16 April, 13:05
Такой бред наворотила, пока не вспомнила про существования слит. Стыдно за себя(
Александр26 уровень, Екатеринбург
8 April, 17:55
Еслиб было больше 4-х пробелов, то наверное собирал бы строку в цикле, а так вернул 4 значения из массива (сплитнутого по пробелу) с плюсованием пробелов начиная с первого в блоке трай/кетч, в кетче выбросил нужное исключение, понимая, что тут и проверка на нуль и на недостаточное количество элементов массива.
Евгений36 уровень, Нижний Новгород
30 March, 16:37
Объясните пожалуйста, с чем у всех возникает сложность? Я решил за 5 минут split-ом по пробелам и for, в котором прибавлял к пустой строке нужные элементы массива. Я вижу, что большинство решило с 5 попыток, почему так? Я сначала тоже хотел сделать через indexOf, но потом увидел, что дело гиблое и не стал. Так много попыток, потому что люди пытаются решать через indexOf или что?
Андрей Киров29 уровень, Екатеринбург
6 April, 05:25
Через indexOf тоже быстро решается. Ничего там хитрого нет. Нужно только немного внимательности при контроле вывода. Тоже не знаю, кто тут по пять раз не осилили эту задачу.
Евгений27 уровень, Санкт-Петербург
14 June, 08:32
split() сразу пришел в голову, но захотелось попробовать с indexOf(), раз уж лекция была о нем, решилось тоже довольно просто. Хотя первую попытку загубило отсутствие отдельной проверки на null, а вторую опечатка.
tremb30 уровень, Москва
26 March, 10:21
null тоже "TooShortStringException" оказывается. то есть не нужно его отдельно обрабатывать! А слово нулевой длинны, в случае 2х пробелов - это нормально!
Siraj26 уровень, Москва
12 January, 16:33
Вот как из данного условия понять что такое не корректные данные? В случае, если в метод getPartOfString были переданы некорректные данные, должно возникнуть исключение TooShortStringException. Чем дальше тем ущербнее техзадание. Непонятно что нужно сделать!
Александр Колобов23 уровень, Одесса
20 January, 20:14
Согласен, точно не написано. Но из названия исключения и условий задачи можно предположить, что это должна быть строка у которой есть как минимум пять слов через пробел. Под словом подразумевается даже один символ.
LuneFox25 уровень, Москва
9 December 2019, 09:58
После этой задачи научился говорить на змеином, как Гарри Поттер.
Pattern pattern = Pattern.compile("^\\S*\\s(\\S+\\s\\S+\\s\\S+\\s\\S+)(\\s|$)");
Тот кто в танке28 уровень, Ярославль
6 February, 14:00
"\\s(([\\S]*[\\s]){3}[\\S]*)" такая регулярка мне больше понравилась
Yerzhan27 уровень, Актау
30 November 2019, 13:53
часа четыре убил на эту задачу, хотя думал, что решу за 5 минут. Сделал вначале через indexOf валидатор не принимал по двум последним пунктам, не стал заморачиваться. Переделал через split опять промах, но валидатор подсказал насчет проверки на null. Поставил проверку на null, все равно не проходило и не видело этой проверки. Прошла только когда поставил данную проверку самой первой в методе.
Женя23 уровень, Пинск
вчера, 13:28
проверка на null и должна быть самой первой проверкой, иначе получаем NullPointerException, а по условию - в случае некорректных данных должно возникать TooShortStringException
KsArT36 уровень, Харьков
24 November 2019, 12:32
Простенькая задачка, но интересно, если решать сплитом или циклом и между словами будет по 2 пробела, то одно из слов будет "", это будет удовлетворять условию задачи или нужно брать только не пустые значения?