Удалить первое слово из строки в Java

Какой лучший способ удалить первое слово из строки в Java?

Если у меня

String originalString = "This is a string";

Я хочу удалить из него первое слово и фактически создать две строки -

removedWord = "This"
originalString = "is a string;

Ответ 1

Simple.

 String o = "This is a string";
 System.out.println(Arrays.toString(o.split(" ", 2)));

Выход:

[This, is a string]

EDIT:


В строке 2 ниже значения сохраняются в массиве arr. Получите доступ к ним, как к обычным массивам.

 String o = "This is a string";
 String [] arr = o.split(" ", 2);

 arr[0] // This
 arr[1] // is a string

Ответ 2

Вы можете использовать substring

removedWord = originalString.substring(0,originalString.indexOf(' '));
originalString = originalString.substring(originalString.indexOf(' ')+1);

Ответ 3

Это, безусловно, хорошее решение

    String originalString = "This is a string";
    originalString =originalString.replaceFirst("This ", "");

Ответ 4

Для немедленного ответа вы можете использовать это:

removeWord = originalString.substring(0,originalString.indexOf(' '));
originalString = originalString.substring(originalString.indexOf(' '));

Ответ 5

Попробуйте это с помощью индекса var, я думаю, что он достаточно эффективен:

int spaceIdx = originalString.indexOf(" ");
String removedWord = originalString.substring(0,spaceIdx);
originalString = originalString.substring(spaceIdx);

До JDK 1.7 с использованием метода ниже может быть более эффективным, особенно если вы используете длинную строку (см. статью ).

originalString = new String(originalString.substring(spaceIdx));

Ответ 6

Вы можете проверить, где первый символ пробела и отдельная строка.

String full = "Sample Text";
String cut;
int pointToCut = full.indexOf( ' ');

if ( offset > -1)
{
  cut = full.substring( space + 1);
}

Ответ 7

String str = "This is a string";    

String str2=str.substring(str.indexOf(" "));
String str3=str.replaceFirst(str2, "");

String replaceFirst и substring

Ответ 8

также вы можете использовать это решение:

static String substringer(String inputString, String remove) {
    if (inputString.substring(0, remove.length()).equalsIgnoreCase(remove)) {
        return inputString.substring(remove.length()).trim();
    }
    else {
            return inputString.trim();
    }
}

Пример: substringer ( "Это строка", "This");

Ответ 9

Вы можете использовать класс StringTokenizer.