Как разбить строку из первого пробела только Java

Я попытался разделить строку с помощью string.Индекс и строка.длина, но я получаю ошибку, что строка находится вне диапазона. Как я могу это исправить?

while (in.hasNextLine())  {

            String temp = in.nextLine().replaceAll("[<>]", "");
            temp.trim();

            String nickname = temp.substring(temp.indexOf(' '));
            String content = temp.substring(' ' + temp.length()-1);

            System.out.println(content);

3 ответов


должно быть примерно так:

String nickname = temp.substring(0, temp.indexOf(' '));
String content = temp.substring(temp.indexOf(' ') + 1);

используйте java.ленг.Функция разделения строк с ограничением.

String foo = "some string with spaces";
String parts[] = foo.split(" ", 2);
System.out.println(String.format("cr: %s, cdr: %s", parts[0], parts[1]));

вы получите:

cr: some, cdr: string with spaces

string.split(" ",2)

сплит лимит ввода ограничения количества раз образец применяется.

http://docs.oracle.com/javase/7/docs/api/java/lang/String.html#split(java.lang.String,%20int)