Я знаю, как удалить гласные из строки, но как удалить определенные пробелы из строки

Приведенный ниже код удаляет гласные из строки, но не удаляет пробелы, соответствующие до или после «_».

public static String removeVowels(String str) {
    str = str.replaceAll("[aeiouAEIOU]",""); 


    return str;

}

public static void main(String[] args) {
    System.out.println("__" + removeVowels(" The Lion king ") + "__");

}
}

Выход консоли:

__ Th Ln kng __

Каким должен быть вывод консоли:

__Th Ln kng__

Не совсем уверен, как бы я это сделал, не заходя в основной метод и вручную удаляя пробелы.


person D. Lee    schedule 10.05.2016    source источник
comment
Заголовок вашего вопроса удаляет пробелы из строки, но похоже, что вам нужен гораздо более конкретный случай - удаление пробелов после первых двух _ и перед последними двумя _?. Судя по вашему коду, вы создали ошибку в своих тестовых примерах: " Snowboarding school " имеет начальный и конечный пробел...   -  person Don Cheadle    schedule 10.05.2016


Ответы (2)


Не уверен, что вы спрашиваете, но, возможно, вы хотите trim() свою строку. Это удаляет пробелы с переднего и заднего концов строки:

str = str.replaceAll("[aeiouAEIOU]","").trim(); 
person Hovercraft Full Of Eels    schedule 10.05.2016
comment
Это именно то, что я хотел сделать. Вау так просто. Спасибо - person D. Lee; 10.05.2016

Использовать:

str = str.replaceAll("\s*__\s*",""); 
person Jens    schedule 10.05.2016