Как удалить все пробелы в строке java
Перейти к содержимому

Как удалить все пробелы в строке java

  • автор:

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

В этом посте будет обсуждаться, как удалить пробелы из строки в Java.

Символ называется пробельным символом в Java тогда и только тогда, когда Character.isWhitespace(char) метод возвращает истину. Наиболее часто используемые пробельные символы: \n, \t, \r и пространство. Шаблон регулярного выражения для пробельных символов: \s . Используя этот шаблон в регулярном выражении, мы можем либо заменить последовательные пробелы одним пробелом, либо удалить все пробелы из входной строки.

1. Замена последовательных пробелов одним пробелом

Идея состоит в том, чтобы использовать шаблон \s+ вместо \s для обработки двух или более последовательных пробелов во входной строке, как показано ниже:

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

Я хочу удалить пробелы в строке. Я попробовал trim() , но это удаляет только пробелы до и после всей строки. Я также пробовал replaceAll(«\\W», «») , но затем удаляется = .

Как я могу получить строку с помощью:

30 ответов

st.replaceAll(«\\s+»,»») удаляет все пробелы и невидимые символы (например, tab, \n ).

st.replaceAll(«\\s+»,»») и st.replaceAll(«\\s»,»») дают тот же результат.

Второе регулярное выражение на 20% быстрее, чем первое, но по мере увеличения числа последовательных пробелов первое работает лучше второго.

Назначьте значение переменной, если она не используется напрямую:

\w = Все, что является символом слова

\w = Все, что не является символом слова (включая пунктуацию и т.д.)

\s = Все, что является символом пробела (включая пробел, символы табуляции и т.д.)

\s = Все, что не является символом пробела (включая буквы и цифры, а также пунктуацию и т.д.)

(Edit: Как указано, вам нужно избежать обратного слэша, если вы хотите, чтобы \s достигли механизма регулярных выражений, в результате получилось \\s .)

Самый правильный ответ на вопрос:

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

(Опытные разработчики Java могут сказать: «Конечно, вы не можете на самом деле модифицировать строку», но целевая аудитория для этого вопроса может не знать этого.)

trim() в java

Метод trim() в Java позволяет удалить пробелы в начале и конце строки. Как будто «подрезает» пробелы.

Синтаксис:

Как всегда, проще объяснить на примере.

Пример

Если Вы запустите данный код на своем компьютере, то в консоли Вы увидите следующее:

Java — очень крутой язык программирования.

Java — очень крутой язык программирования.

Комментарии к коду:

  • Как видите, у нас 2 переменные: sentence1 и sentence2, в которые присвоено одно и то же значение, а именно: » Java — очень крутой язык программирования. » При этом слева и справа у нас пробелы.
  • Как же сделать так, чтоб в консоль было выведено » Java — очень крутой язык программирования. » без пробелов слева и справа? Для этого необходимо применить метод trim ().

И действительно, написав вот эти 2 строчки кода:

мы получили в консоли:

Java — очень крутой язык программирования.

Java — очень крутой язык программирования.

То есть переменная sentence1 была выведена в консоль с пробелами слева и справа. А переменная sentence2 была выведена без пробелов слева и справа, поскольку мы применили метод trim().

Как видите, все предельно просто.

Данная статья написана Vertex Academy. Есть возможность пройти наши курсы по Java с нуля. Детальнее на сайте.

Удалить все пробелы, табуляцию, символы и т.д. из String Java?

Я считываю текст в строку. хочу удалить абсолютно все кроме букв. Пробелы, переходы на новую строку, Абзацы, символы, ну и т.д для последующего подсчета биграмм. Пытаюсь сделать это регулярным выражением. У меня ничего не выходит

Для начала, такое выраение не убирает переходы на новую строку в некоторых случаях

replaceAll(«[^а-я]+», «»);
Возвращает ничего

  • Вопрос задан более трёх лет назад
  • 7526 просмотров
  • Facebook
  • Вконтакте
  • Twitter

EugeneP2

  • Facebook
  • Вконтакте
  • Twitter

Therapyx

Вот недавно писал для замены строк в текст фаиле с 001, 002, 003, 004. 500 хД чуток переделал, там где стринги таб, и ньюлайн, просто добавь еще твои варианты и вставь в лупе доп строку для этого стринга. Т.е. просто сделай все нужные варианты, которые нужны именно тебе. В данном же примере я сделал только пробелы и переходы на новую строку

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *