Удаление пробелов из строк в Java - PullRequest
633 голосов
/ 28 марта 2011

У меня есть такая строка:

mysz = "name=john age=13 year=2001";

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

Как мне получить строку с:

mysz2 = "name=johnage=13year=2001"

Ответы [ 31 ]

6 голосов
/ 30 марта 2014
public static void main(String[] args) {        
    String s = "name=john age=13 year=2001";
    String t = s.replaceAll(" ", "");
    System.out.println("s: " + s + ", t: " + t);
}

Output:
s: name=john age=13 year=2001, t: name=johnage=13year=2001
6 голосов
/ 28 декабря 2015

Вы можете сделать это так просто

String newMysz = mysz.replace(" ","");
4 голосов
/ 17 февраля 2016
String a="string with                multi spaces ";
//or this 
String b= a.replaceAll("\\s+"," ");
String c= a.replace("    "," ").replace("   "," ").replace("  "," ").replace("   "," ").replace("  "," ");

// он отлично работает с любыми пробелами * не забывайте пробел в sting b

3 голосов
/ 09 мая 2017

Использование mysz.replaceAll("\\s+","");

3 голосов
/ 28 марта 2011

\W означает «не слово».Шаблон для пробельных символов \s.Это хорошо задокументировано в javadoc Pattern .

3 голосов
/ 02 апреля 2013

В Java мы можем сделать следующую операцию:

String pattern="[\\s]";
String replace="";
part="name=john age=13 year=2001";
Pattern p=Pattern.compile(pattern);
Matcher m=p.matcher(part);
part=m.replaceAll(replace);
System.out.println(part);

для этого вам необходимо импортировать в вашу программу следующие пакеты:

import java.util.regex.Matcher;
import java.util.regex.Pattern;

Надеюсь, это поможет вам.

3 голосов
/ 21 июня 2016

Используя Pattern And Matcher, он становится более динамичным.

import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class RemovingSpace {

    /**
     * @param args
     * Removing Space Using Matcher
     */
    public static void main(String[] args) {
        String str= "jld fdkjg jfdg ";
        String pattern="[\\s]";
        String replace="";

        Pattern p= Pattern.compile(pattern);
        Matcher m=p.matcher(str);

        str=m.replaceAll(replace);
        System.out.println(str);    
    }
}
2 голосов
/ 07 мая 2013
mysz = mysz.replace(" ","");

Первый с пробелом, второй без пробела.

Тогда это сделано.

2 голосов
/ 03 ноября 2015
import java.util.*;
public class RemoveSpace {
    public static void main(String[] args) {
        String mysz = "name=john age=13 year=2001";
        Scanner scan = new Scanner(mysz);

        String result = "";
        while(scan.hasNext()) {
            result += scan.next();
        }
        System.out.println(result);
    }
}
2 голосов
/ 07 октября 2017

Использовать apache string util class, лучше избегать NullPointerException

org.apache.commons.lang3.StringUtils.replace("abc def ", " ", "")

Выход

abcdef
...