Как разделить на дефис после разделения через запятую? - PullRequest
0 голосов
/ 04 июля 2018

У меня есть следующая строка ввода: Panama-Eduardo, Colombia-Elena

Я разделяю строку через запятую, используя

String[] arr = input.split(",");

В результате

arr[0] = "Panama-Eduardo"
arr[1] = "Colombia-Elena"

Мой вопрос: как я могу потом разбить эти строки на дефисе, чтобы получить следующий результат:

Группа 1:

  • Panama
  • Eduardo

Группа 2:

  • Colombia
  • Elena

Ответы [ 3 ]

0 голосов
/ 04 июля 2018

Вы можете перебрать массив, чтобы разделить его больше.

List<String> list = new ArrayList<>();
for (String s : arr) {
    list.add(s.split("-"));
}
0 голосов
/ 04 июля 2018

Пожалуйста, введите следующий код:

public class SplitExplained {
    public static void main(String[] args) {
        String input = "Panama-Eduardo, Colombia-Elena";
        String[] names = input.split(",");

        for (int i = 0; i < names.length; i++) {
            String[] strings = names[i].split("-");
            System.out.println("Group " + (i + 1));
            System.out.println(" ." + strings[0].trim());
            System.out.println(" ." + strings[1].trim());
            System.out.println();
        }
    }
}
0 голосов
/ 04 июля 2018

Вы просто позвоните split снова. E.g.:

List<String[]> result = Arrays.stream(input.split(","))
    .map(s -> s.split("-"))
    .collect(Collectors.toList());
...