Есть текстовый документ со строками. Строки содержат:
Ivanov Ivan Ivanovich 31 12 1987
Vasya 15 5 2013
Имена могут быть с пробелами. Достаю их с помощью:
name = line.replaceAll("\\d", "").trim();
Вопрос. Как достать строку с числами, включая пробелы между ними?
birthday = line.replaceAll("\\w", ""); //возвращает пустую строку
Необходимо разбить строку, считываемую из файла на две строки. Первая содержит имя, вторая дату рождения.
Попробуйте такой вариант:
public class SpacesHelp {
public static void main(String[] args) {
String source =
"Ivanov Ivan Ivanovich 31 12 1987\n" +
"Vasya 15 5 2013";
String[] lines = source.split("\n");
for (String line : lines) {
String result = line.replaceAll("(\\w+\\s)?(\\w+\\s)?(\\w+\\s)?(\\d+\\s\\d+\\s\\d+)", "$4");
System.out.println(result);
}
}
}
birthday = line.replaceAll("[^\\s\\d]", "").trim();
Или так:
name = line.replaceAll("\\d", "").trim();
birthday = line.replace(name, "").trim();
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Пишу приложение, логика которого требует подключаться к серверу для обновления раз в годНо дата в системе пользователя может быть установлена...
Я создаю мини игру в Android StudioПри клике View меняет цвет
Недавно начал учить Java и в качестве практической задачи нужно написать приложение, которое должна сравнивать 3 возраста и выдавать результат,...